:root { --ink:#080808; --paper:#f7f7f7; --line:rgba(0,0,0,.16); }
* { box-sizing:border-box; }
body { min-height:100vh; margin:0; background:var(--ink); color:var(--ink); font-family:Arial,Helvetica,sans-serif; }
.skip-link { position:absolute; z-index:4; left:-999px; top:0; padding:9px 12px; background:#fff; color:#000; }.skip-link:focus { left:0; }
.utility-bar { position:fixed; z-index:3; top:0; left:0; right:0; height:43px; padding:0 clamp(18px,4vw,58px); display:flex; align-items:center; justify-content:space-between; gap:22px; background:var(--ink); color:#fff; font-size:10px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }.utility-bar p { margin:0; }.utility-bar span { padding:0 3px; color:#aaa; }.utility-bar a { color:#fff; text-decoration:none; font-size:13px; white-space:nowrap; }
.landing { min-height:100vh; padding-top:43px; display:grid; grid-template-columns:minmax(420px,1.08fr) minmax(410px,.92fr); overflow:hidden; }.art-panel { min-height:calc(100vh - 43px); position:relative; padding:clamp(22px,4vw,55px); display:flex; align-items:center; justify-content:center; background:#f7f7f7; border-right:7px solid var(--ink); overflow:hidden; }.pest-collage { position:absolute; inset:0; display:grid; grid-template-columns:repeat(6,1fr); grid-template-rows:repeat(6,1fr); overflow:hidden; background:#fff; }.tile { overflow:hidden; background:#fff; }.pest { display:block; width:100%; height:100%; object-fit:cover; filter:grayscale(1) contrast(1.08); opacity:.13; }.service-card { position:relative; z-index:2; width:min(82%,615px); min-width:0; background:#fff; border:8px solid #fff; filter:drop-shadow(0 15px 18px rgba(0,0,0,.34)); }
.content-panel { min-height:calc(100vh - 43px); display:flex; flex-direction:column; background:var(--ink); color:var(--paper); }.content-inner { width:min(570px,100%); margin:auto; padding:clamp(39px,6vh,70px) clamp(32px,7vw,92px) 28px; }.content-inner .logo { display:block; width:min(285px,72%); margin:0 auto clamp(31px,5vh,52px); filter:invert(1); }.content-panel h1 { margin:0; font-family:Georgia,'Times New Roman',serif; font-size:clamp(39px,4.3vw,61px); letter-spacing:-.055em; line-height:.91; }.content-panel h1 em { color:#fff; }.intro-copy { max-width:470px; margin:19px 0 0; color:#e4e4e4; font:14px/1.5 Georgia,'Times New Roman',serif; }.actions { margin-top:28px; display:flex; flex-wrap:wrap; align-items:center; gap:20px; }.contact-button { display:inline-flex; align-items:center; gap:29px; padding:16px 19px; background:#fff; color:#000; text-decoration:none; font-size:11px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }.contact-button span { font-size:19px; line-height:0; }.call-link { color:#fff; font-size:11px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; text-underline-offset:4px; } footer { text-align:center; margin-top:auto; padding:16px clamp(32px,7vw,92px); border-top:1px solid rgba(255,255,255,.19); color:#bdbdbd; font-size:10px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; } footer span { padding:0 4px; }
@media (max-width:780px) { .utility-bar { font-size:8px; }.utility-bar a { font-size:11px; }.landing { display:block; overflow:visible; }.art-panel { min-height:0; padding:75px 24px 29px; border-right:0; border-bottom:6px solid var(--ink); }.pest-collage { grid-template-columns:repeat(6,1fr); grid-template-rows:repeat(6,1fr); }.service-card { width:min(90%,480px); min-width:0; }.content-panel { min-height:0; }.content-inner { padding:47px 28px 37px; }.content-inner .logo { width:245px; margin-bottom:34px; }.content-panel h1 { font-size:49px; } footer { padding:16px 28px; } }

@media (max-width:780px) { .landing { display:flex; flex-direction:column; }.content-panel { order:0; }.art-panel { order:1; padding:32px 24px; border-bottom:0; border-top:6px solid var(--ink); } }

/* Preserve the authored black-and-white palette in automatic dark mode. */
:root { color-scheme: only light; }
.content-inner .logo { color-scheme: only light; background-color:transparent; filter:invert(1); }

@media (max-width:780px) { .content-panel footer { display:none; } }
