:root{--ink:#172321;--gold:#c79b55;--line:#d9ddda;--muted:#58645f}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6;background:#fff}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #b37c27;outline-offset:5px}header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 5.5%;background:white;border-bottom:1px solid var(--line)}.logo{width:125px;height:88px;object-fit:contain}header nav{display:flex;gap:38px;align-items:center;font-size:14px;font-weight:600}.nav-contact{border:1px solid var(--ink);padding:12px 24px}header nav a:hover,.underlink:hover{color:#976a27}#menu{display:none}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:620px;background:var(--ink);color:#fff}.hero-copy{padding:70px 8% 24px 11%;display:flex;flex-direction:column;align-items:flex-start}.eyebrow{font-size:12px;letter-spacing:.17em;font-weight:700;color:var(--gold);display:block}.eyebrow.dark{color:#8b632a}h1{font-size:clamp(40px,4.3vw,68px);letter-spacing:-.045em;font-weight:500;line-height:1.08;margin:25px 0}h1 em{font-style:normal;color:#ccaa72}.hero-copy>p{color:#c6cecb;max-width:440px;line-height:1.8;margin:0 0 32px}.actions{display:flex;gap:25px;align-items:center;flex-wrap:wrap}.button{display:inline-flex;justify-content:center;align-items:center;min-height:50px;padding:13px 25px;font-size:14px;font-weight:700;transition:background .2s}.gold{background:var(--gold);color:var(--ink)}.gold:hover{background:#dfb777}.black{background:var(--ink);color:#fff}.black:hover{background:#304a40}.text-link{font-size:14px;border-bottom:1px solid #53635a;padding:10px 0}.text-link span{font-size:11px;color:#aaa;margin-left:8px}.hero-foot{width:100%;border-top:1px solid #46514c;margin-top:60px;padding-top:22px;display:flex;justify-content:space-between;gap:20px;font-size:10px;letter-spacing:.1em;color:#a7b4ac}.hero-image{position:relative;min-width:0;overflow:hidden}.hero-image>img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:52% center}.hero-image:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(9,23,25,.85))}.image-caption{position:absolute;z-index:1;bottom:35px;left:35px;display:grid;gap:4px}.image-caption span{font-size:12px;letter-spacing:.03em}.image-caption strong{font-size:22px;font-weight:500}.sector-strip{background:#edf0ee;display:flex;justify-content:space-between;gap:24px;padding:24px 5.5%;font-size:11px;letter-spacing:.14em;font-weight:700}.section{padding:90px 6%}.about{display:grid;grid-template-columns:1fr 1fr;gap:9%;border-bottom:1px solid var(--line)}h2{font-size:clamp(30px,3.15vw,47px);font-weight:500;line-height:1.16;letter-spacing:-.035em;margin:18px 0 25px}p{color:var(--muted)}.large{font-size:24px;line-height:1.4;color:var(--ink);margin-top:0}.underlink{display:inline-block;font-size:14px;font-weight:600;border-bottom:1px solid var(--ink);padding-bottom:7px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:35px}.section-head h2{margin-bottom:0}.section-head>p{font-size:15px;margin-bottom:5px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line)}.service-grid article{padding:28px;border-right:1px solid var(--line)}.service-grid article:last-child{border:0}.service-number{color:#926b32;font-size:13px}.service-grid h3{font-size:22px;font-weight:500;margin:30px 0 12px}.service-grid p{font-size:15px;min-height:100px}.spec{border-top:1px solid var(--line);padding-top:19px;font-size:13px;font-weight:600}.spec span{display:block;font-weight:400;color:var(--muted);margin-top:5px}.projects{background:#f1f3f2}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px 32px}.photo{width:100%;padding:0;border:0;position:relative;display:block;overflow:hidden;background:#dae0dc}.photo img{display:block;width:100%;height:340px;object-fit:cover;transition:transform .5s}.photo:hover img{transform:scale(1.035)}.photo>span{position:absolute;bottom:16px;right:16px;background:rgba(23,35,33,.88);color:#fff;padding:6px 13px;font-size:12px}.project-meta{font-size:10px;letter-spacing:.08em;margin-top:21px;display:flex;justify-content:space-between;gap:10px;color:#626e66}.project h3{font-size:25px;font-weight:500;letter-spacing:-.02em;margin:9px 0}.project p{font-size:15px;max-width:540px;margin:0 0 17px}.project-tag{font-size:12px;color:#795925;border-top:1px solid #ccd2ce;padding-top:12px}.delivery{background:var(--ink);color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:12%}.delivery p{color:#b7c3bc;max-width:390px}.delivery ol{list-style:none;margin:0;padding:0}.delivery li{display:flex;gap:24px;border-top:1px solid #45544b;padding:21px 0}.delivery li>span{color:var(--gold);font-size:13px}.delivery h3{margin:0;font-weight:500;font-size:21px}.delivery li p{margin:4px 0 0;font-size:14px}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}figure{margin:0}figcaption{margin-top:13px;font-size:14px}.gallery .photo img{height:360px}.contact{background:#e9e2d5}.contact-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:12%}.contact h2{max-width:630px}.contact p{max-width:590px;color:#4a514b}.email{display:block;margin-top:20px;font-size:20px;text-decoration:underline;text-underline-offset:5px}.contact address{font-style:normal;border-left:1px solid #bfc0b3;padding-left:40px;margin-top:30px}.address-note{font-size:12px;color:#596155}footer{padding:30px 6%;display:flex;gap:20px;justify-content:space-between;font-size:12px;color:#56645b}dialog{border:0;padding:50px 20px 14px;max-width:95vw;max-height:94vh;background:var(--ink);color:#fff}dialog::backdrop{background:#000c}dialog img{display:block;max-width:85vw;max-height:73vh;object-fit:contain;margin:auto}dialog p{color:#fff;text-align:center;font-size:14px}.close{position:absolute;right:15px;top:9px;background:transparent;color:white;border:0;padding:5px}.skip{position:fixed;top:-100px;z-index:100;background:white;padding:12px}.skip:focus{top:0}[hidden]{display:none!important}@media(min-width:1600px){body{max-width:1800px;margin:auto}}@media(max-width:1000px){.hero-copy{padding-top:50px}h1{font-size:44px}.service-grid{grid-template-columns:1fr 1fr}.service-grid article:nth-child(2){border-right:0}.service-grid article:nth-child(-n+2){border-bottom:1px solid var(--line)}.service-grid p{min-height:60px}.hero-foot{margin-top:35px;flex-direction:column;gap:4px}.photo img{height:280px}.section{padding:65px 5%}}@media(max-width:650px){header{height:80px;padding:0 5%}.logo{height:73px;width:105px}header nav{display:none}#menu{display:block;background:white;border:1px solid var(--line);padding:8px 17px;font-size:14px}#mobile-nav{padding:15px 5%;background:#fff;display:grid;gap:15px}.hero{grid-template-columns:1fr}.hero-copy{padding:45px 6% 25px}h1{font-size:44px;max-width:440px}.hero-image{min-height:370px}.hero-foot{flex-direction:row;font-size:9px}.sector-strip{flex-wrap:wrap;justify-content:center;font-size:10px;gap:14px 22px}.about,.delivery,.contact-grid{grid-template-columns:1fr;gap:25px}.section{padding:55px 6%}h2{font-size:34px}.large{font-size:21px}.section-head{display:block}.section-head>p,.section-head>.underlink{margin-top:20px}.service-grid{grid-template-columns:1fr}.service-grid article{border-right:0;border-bottom:1px solid var(--line);padding:25px}.service-grid h3{margin-top:12px}.service-grid p{min-height:0}.project-grid{grid-template-columns:1fr;gap:40px}.photo img{height:290px}.gallery-grid{grid-template-columns:1fr;gap:28px}.gallery .photo img{height:390px}.contact address{border-left:0;border-top:1px solid #bfc0b3;padding:28px 0 0;margin-top:10px}footer{flex-direction:column;gap:8px}.email{font-size:19px}.project-meta{font-size:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.equipment-detail{margin-top:35px;border-top:1px solid var(--line);padding-top:24px}.equipment-detail h3{font-size:22px;font-weight:500}.equipment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.equipment-grid p{font-size:14px}.equipment-grid strong{color:var(--ink);font-size:16px}.equipment-note,.gallery-note{font-size:13px}.gallery-note{margin-top:25px}@media(max-width:650px){.equipment-grid{grid-template-columns:1fr;gap:0}}

/* Full company-profile photo collections */
.project-grid{grid-template-columns:1fr;gap:64px}.project{min-width:0}.project h3{font-size:30px}.project p{max-width:780px}.profile-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:26px}.profile-photo-grid figure{min-width:0}.profile-photo-grid .photo{background:#e4e8e5;border:1px solid #d4dbd6}.profile-photo-grid .photo img{height:300px;object-fit:contain;padding:10px}.profile-photo-grid .photo:hover img{transform:none}.profile-photo-grid figcaption{font-size:14px;margin-top:9px}.portfolio-group+ .portfolio-group{margin-top:48px}.portfolio-group h3{font-size:24px;font-weight:500;margin:28px 0 0}.equipment-detail .profile-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-meta{font-size:12px}.project-tag{font-size:14px}.photo>span{font-size:14px}@media(max-width:1000px){.profile-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.profile-photo-grid,.equipment-detail .profile-photo-grid{grid-template-columns:1fr}.profile-photo-grid .photo img,.gallery .profile-photo-grid .photo img{height:320px}.project h3{font-size:26px}.project-grid{gap:45px}}
