:root{--ink:#17201c;--forest:#244c3a;--lime:#d7ef74;--sand:#f2efe7;--white:#fff;--line:#d8ddd8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.6;background:#fff}a{color:inherit}.site-header{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:20px clamp(20px,5vw,72px);border-bottom:1px solid rgba(255,255,255,.14);position:sticky;top:0;background:rgba(10,10,10,.98);z-index:5}.brand{display:flex;align-items:center;text-decoration:none;flex:0 0 auto}.brand img{display:block;width:clamp(360px,46vw,640px);max-width:48vw;height:108px;object-fit:contain;object-position:left center;filter:invert(1) grayscale(1)}.site-header nav{display:flex;gap:24px}.site-header nav a{color:#fff;text-decoration:none;font-weight:700;font-size:14px;transition:color .2s ease}.site-header nav a:hover{color:var(--lime)}.button{display:inline-block;background:var(--lime);color:var(--ink);padding:14px 20px;border-radius:4px;text-decoration:none;font-weight:800}.button.small{padding:9px 14px;font-size:13px}.hero{min-height:650px;background:linear-gradient(120deg,#173528 0%,#244c3a 58%,#315f48 100%);color:#fff;padding:clamp(70px,10vw,140px) clamp(20px,8vw,120px);display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,.7fr);gap:70px;align-items:center}.hero h1{font-size:clamp(48px,7vw,94px);line-height:.98;letter-spacing:-.055em;margin:14px 0 25px;max-width:900px}.hero-copy>p:not(.eyebrow){font-size:19px;max-width:700px}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-weight:800;font-size:12px;color:#527b68}.hero .eyebrow{color:var(--lime)}.actions{display:flex;gap:24px;align-items:center;margin:32px 0}.text-link{font-weight:800;color:white}.trust{display:flex;flex-wrap:wrap;gap:28px;padding:0;list-style:none;font-size:14px}.trust li:before{content:"✓";color:var(--lime);font-weight:bold;margin-right:8px}.hero-panel{border:1px solid rgba(255,255,255,.25);padding:35px;background:rgba(255,255,255,.07)}.hero-panel strong{font-size:25px}.section{padding:90px clamp(20px,8vw,120px)}.section h2{font-size:clamp(35px,5vw,62px);line-height:1.05;letter-spacing:-.04em;margin:10px 0 40px;max-width:950px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.cards article{border:1px solid var(--line);padding:0;min-height:100%;display:flex;flex-direction:column;overflow:hidden;background:#fff}
.service-card-photo{aspect-ratio:3/2;overflow:hidden;background:var(--sand)}
.service-card-photo img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .35s ease}
.cards article:hover .service-card-photo img{transform:scale(1.035)}
.service-card-body{padding:26px;display:flex;flex:1;flex-direction:column}
.cards h3{font-size:24px;line-height:1.15;margin:0}
.cards article a{margin-top:auto;color:var(--forest);font-weight:800}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;background:var(--sand)}.split p{font-size:18px}.band{margin:0 clamp(20px,5vw,70px);background:var(--forest);color:white;padding:60px clamp(25px,5vw,70px);display:grid;grid-template-columns:1.5fr 1fr auto;gap:35px;align-items:center}.band h2{font-size:38px;line-height:1.1;margin:0}.button.light{background:white}.contact{background:#eef4ef;display:grid;grid-template-columns:1fr 1fr;gap:70px}.contact-box{background:white;padding:35px;display:flex;flex-direction:column;align-items:flex-start}.contact-box a{font-size:20px;font-weight:800;color:var(--forest);margin-bottom:12px}footer{background:#101713;color:white;padding:28px clamp(20px,5vw,72px);display:flex;justify-content:space-between;gap:20px;font-size:13px}.service-hero{background:var(--forest);color:white;padding:100px clamp(20px,8vw,120px)}.service-hero h1{font-size:clamp(45px,7vw,80px);line-height:1;margin:12px 0}.service-copy{max-width:900px}.service-copy h2{font-size:35px;margin-top:50px}.service-copy li{margin:8px 0}@media(max-width:1100px){.site-header nav{display:none}}
@media(max-width:900px){.site-header nav{display:none}.cards{grid-template-columns:1fr 1fr}.hero,.split,.contact{grid-template-columns:1fr}.hero{min-height:auto}.band{grid-template-columns:1fr}.hero-panel{display:none}}@media(max-width:580px){.site-header{padding:12px 16px;gap:12px}.brand img{width:220px;max-width:56vw;height:68px}.site-header .button{font-size:0}.site-header .button:after{content:"Contact Us";font-size:13px}.hero{padding:75px 20px}.hero h1{font-size:50px}.section{padding:65px 20px}.cards{grid-template-columns:1fr}.band{margin:0 20px;padding:38px 25px}.trust{display:block}.trust li{margin:7px 0}footer{display:block}}
.brand-text{flex-direction:column;align-items:flex-start;line-height:1}.brand-text strong{font-family:Georgia,serif;font-size:31px;letter-spacing:.08em}.brand-text span{font-family:Georgia,serif;font-size:10px;letter-spacing:.09em;margin-top:4px}.service-hero p:not(.eyebrow){font-size:20px;max-width:780px}.breadcrumb{display:flex;gap:10px;align-items:center;padding:18px clamp(20px,8vw,120px);background:var(--sand);font-size:14px}.breadcrumb a{font-weight:800;color:var(--forest)}.service-copy{max-width:1100px}.service-copy>p,.service-copy>ul{max-width:850px}.service-copy>p{font-size:18px}.service-copy h2{font-size:clamp(30px,4vw,44px);margin-top:56px;margin-bottom:18px}.faq-section,.related-services{margin-top:80px;padding-top:62px;border-top:1px solid var(--line)}.faq-list{display:grid;gap:12px}.faq-list details{border:1px solid var(--line);padding:0 22px;background:#fff}.faq-list summary{cursor:pointer;font-weight:800;padding:18px 30px 18px 0}.faq-list p{margin:0 0 20px}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.related-card{border:1px solid var(--line);padding:24px;text-decoration:none;display:flex;flex-direction:column;gap:8px;min-height:160px}.related-card strong{font-size:21px;color:var(--forest)}.related-card:hover{border-color:var(--forest);background:#f6f8f6}.service-cta{margin-top:80px;background:var(--forest);color:#fff;padding:42px;display:grid;grid-template-columns:1.5fr 1fr;gap:40px;align-items:center}.service-cta h2{margin:8px 0 12px;color:#fff}.service-cta .eyebrow{color:var(--lime)}.cta-actions{display:flex;flex-direction:column;align-items:flex-start;gap:18px}.text-link.dark{color:#fff}@media(max-width:900px){.related-grid,.service-cta{grid-template-columns:1fr}}@media(max-width:580px){.brand-text strong{font-size:25px}.service-hero{padding:72px 20px}.breadcrumb{padding:14px 20px}.related-grid{grid-template-columns:1fr}.service-cta{padding:28px}.faq-list details{padding:0 16px}}
/* Hamcon wordmark */
.site-header>.brand-text strong{font-size:clamp(34px,4vw,52px);letter-spacing:.1em}.site-header>.brand-text span{font-size:12px;letter-spacing:.22em}

/* Hamcon logo */
.brand-logo-frame{display:block;position:relative;width:160px;height:106px;overflow:hidden}
.brand-logo img{position:absolute;width:160px;max-width:none;height:auto;left:0;top:-46px;filter:none;object-fit:initial}
@media(max-width:580px){.brand-logo-frame{width:120px;height:80px}.brand-logo img{width:120px;top:-34px}}
