:root{--forest:#183f36;--pine:#0f2d28;--sky:#9dcbd5;--coral:#e6664f;--yellow:#efc75e;--paper:#f6f7f3;--white:#fff;--ink:#1c2a2c;--line:#b8cac5;--mist:#e4f0ed}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.58}
a{color:inherit}
.skip{position:absolute;left:-999px}
.skip:focus{left:1rem;top:1rem;background:#fff;padding:.75rem;z-index:100}
.site-head{height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 max(4vw,28px);background:#fff;position:relative;z-index:20;border-bottom:1px solid #d8e1df}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.brand-seal{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--forest);color:#fff;font:700 14px Georgia,serif;outline:2px solid var(--yellow);outline-offset:3px}
.brand strong,.brand b{display:block}
.brand strong{font:400 13px Georgia,serif;color:#5f6e6b}
.brand b{font:700 16px Georgia,serif}
.site-head nav{display:flex;gap:25px}
.site-head nav a{text-decoration:none;font-size:12px;font-weight:800}
.head-call{text-decoration:none;border-left:1px solid #cdd8d5;padding-left:22px}
.head-call small,.head-call b{display:block}
.head-call small{font-size:9px;text-transform:uppercase;color:#62716f}
.head-call b{font-size:18px;color:var(--forest)}
.eyebrow{font-size:11px;text-transform:uppercase;font-weight:900;letter-spacing:0;margin:0 0 13px;color:var(--coral)}
.hero{height:640px;min-height:560px;position:relative;color:#fff;overflow:hidden}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,45,40,.93) 0%,rgba(15,45,40,.78) 39%,rgba(15,45,40,.18) 67%,rgba(15,45,40,0) 100%)}
.hero-copy{position:relative;z-index:2;max-width:720px;padding:94px 0 0 max(6vw,48px)}
.hero h1{font:700 72px/.98 Georgia,serif;letter-spacing:0;margin:0 0 25px}
.hero-copy>p:not(.eyebrow){font-size:18px;color:#dce9e6;max-width:620px}
.actions{display:flex;align-items:center;gap:22px;margin-top:32px}
.primary{background:var(--coral);color:#fff;text-decoration:none;padding:15px 22px;font-weight:900;border-radius:4px}
.secondary{color:#fff;font-weight:900}
.hero-ribbon{position:absolute;z-index:3;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(5,1fr);background:#fff;color:var(--ink);border-top:5px solid var(--yellow)}
.hero-ribbon span{text-align:center;padding:16px;border-right:1px solid #d8e2df;font-size:11px;font-weight:900;text-transform:uppercase}
.welcome{display:grid;grid-template-columns:.9fr 1.1fr;gap:7vw;padding:92px max(5vw,34px);background:#fff}
.welcome h2,.service-lead h2,.guide-copy h2,.local h2,.expect h2,.faq h2{font:700 54px/1.04 Georgia,serif;letter-spacing:0;margin:0}
.welcome>p{font-size:18px;margin:13px 0 0;color:#536461}
.services{display:grid;grid-template-columns:.72fr 1.28fr;background:var(--forest);color:#fff}
.service-lead{padding:78px max(5vw,42px);background:var(--pine)}
.service-lead>span{display:inline-block;background:var(--yellow);color:var(--ink);font-size:10px;font-weight:900;text-transform:uppercase;padding:7px 10px;margin-bottom:20px}
.service-lead h2{color:#fff}
.service-lead a{display:inline-block;margin-top:28px;color:#fff;font-weight:900}
.service-list{border-left:1px solid #5b776f}
.service-list article{display:grid;grid-template-columns:56px 1fr;gap:24px;padding:27px 34px;border-bottom:1px solid #5b776f}
.service-list article:last-child{border-bottom:0}
.service-list b{color:var(--yellow)}
.service-list h3{font:700 25px Georgia,serif;margin:0 0 7px}
.service-list p{margin:0;color:#cddbd7}
.home-guide{display:grid;grid-template-columns:.92fr 1.08fr;gap:6vw;align-items:center;padding:100px max(5vw,34px)}
.home-guide figure{margin:0}
.home-guide img{width:100%;height:400px;object-fit:cover;border-radius:8px}
.home-guide figcaption{margin-top:10px;color:#5d6c69;font-size:11px}
.guide-items{display:grid;grid-template-columns:1fr 1fr;margin-top:34px;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.guide-items article{padding:20px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:150px}
.guide-items span{display:block;color:var(--coral);font-size:11px;font-weight:900;text-transform:uppercase}
.guide-items p{margin:12px 0 0;color:#536461}
.local{display:grid;grid-template-columns:.86fr 1.14fr;gap:7vw;padding:72px max(5vw,34px);background:var(--sky)}
.local .eyebrow{color:var(--pine)}
.local-copy{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.local-copy p{margin:14px 0 0}
.expect{padding:100px max(5vw,34px);background:#fff}
.expect ol{list-style:none;padding:0;margin:46px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.expect li{background:var(--mist);padding:30px;min-height:250px;border-bottom:4px solid var(--forest)}
.expect li span{display:grid;place-items:center;width:38px;height:38px;background:var(--yellow);border-radius:50%;font-weight:900}
.expect h3{font:700 25px Georgia,serif;margin:36px 0 9px}
.expect p{color:#536461}
.care-band{display:grid;grid-template-columns:.9fr 1.2fr auto;align-items:center;gap:36px;padding:42px max(5vw,34px);background:var(--coral);color:#fff}
.care-band span{font-size:10px;font-weight:900;text-transform:uppercase}
.care-band h2{font:700 34px Georgia,serif;margin:4px 0}
.care-band p{margin:0}
.care-band a{background:#fff;color:var(--ink);text-decoration:none;padding:14px 20px;font-weight:900;border-radius:4px}
.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw;padding:100px max(5vw,34px)}
.faq details{padding:21px 0;border-top:1px solid var(--line)}
.faq details:last-child{border-bottom:1px solid var(--line)}
.faq summary{font-weight:900;cursor:pointer}
.faq details p{margin:12px 0 0;color:#536461}
.closing{text-align:center;padding:96px 24px;background:var(--pine);color:#fff}
.brand-seal.large{width:58px;height:58px;margin:0 auto 24px}
.closing p{text-transform:uppercase;color:var(--yellow);font-size:11px;font-weight:900}
.closing h2{font:700 60px Georgia,serif;margin:8px auto 28px}
.closing a{display:inline-block;background:var(--coral);color:#fff;text-decoration:none;padding:15px 24px;font-weight:900;border-radius:4px}
footer{display:flex;justify-content:space-between;gap:20px;padding:28px max(5vw,34px);background:#0a211e;color:#fff;font-size:12px}
.mobile-call{display:none}
@media(max-width:920px){.site-head nav{display:none}
.welcome,.services,.home-guide,.local,.faq{grid-template-columns:1fr}
.service-list{border-left:0}
.home-guide figure{max-width:650px}
.expect ol{grid-template-columns:1fr 1fr}
.care-band{grid-template-columns:1fr}
.hero-shade{background:linear-gradient(90deg,rgba(15,45,40,.94),rgba(15,45,40,.52))}
.local-copy{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){body{padding-bottom:76px}
.site-head{height:70px;padding:0 15px}
.brand strong{font-size:11px}
.brand b{font-size:13px}
.head-call{display:none}
.hero{height:610px}
.hero-bg{object-position:62% center}
.hero-shade{background:linear-gradient(90deg,rgba(15,45,40,.95),rgba(15,45,40,.64))}
.hero-copy{padding:62px 20px 0}
.hero h1{font-size:46px;max-width:390px}
.hero-copy>p:not(.eyebrow){font-size:16px}
.actions{align-items:flex-start;flex-direction:column}
.hero-ribbon{grid-template-columns:repeat(2,1fr)}
.hero-ribbon span:nth-child(5){display:none}
.welcome,.home-guide,.expect,.faq{padding:68px 20px}
.services .service-lead{padding:64px 20px}
.service-list article{padding:24px 20px}
.home-guide img{height:240px}
.guide-items,.expect ol,.local-copy{grid-template-columns:1fr}
.local{padding:45px 20px}
.care-band{padding:38px 20px}
.closing{padding:70px 20px}
footer{display:block;text-align:center}
footer>*{display:block;margin:7px}
.mobile-call{display:flex;position:fixed;z-index:60;left:0;right:0;bottom:0;justify-content:space-between;align-items:center;background:var(--coral);color:#fff;text-decoration:none;padding:12px 16px}
.mobile-call span{font-size:10px}
.mobile-call b{font-size:17px}
}
@media(max-width:600px){
  .hero{height:560px;min-height:0}
  .hero-copy{padding:36px 20px 0}
  .hero h1{font-size:40px;max-width:360px}
  .hero-copy>p:not(.eyebrow){font-size:15px}
  .actions{gap:0;margin-top:22px}
  .actions .primary{display:none}
  .hero-ribbon span{padding:13px}
}

.h1-location{display:block;margin-top:14px;font-family:inherit;font-size:16px;line-height:1.25;font-weight:700;letter-spacing:0;text-transform:uppercase}

html,body{max-width:100%;overflow-x:clip}
@media(max-width:600px){.local>*{min-width:0;max-width:100%}}
@media(max-width:600px){.local h2{font-size:40px}}
@media(max-width:370px){.local h2{font-size:36px}}
@media(max-width:370px){.closing h2{font-size:52px}}


/* Audit-depth addition: practical homeowner guidance without unsupported claims. */
.service-field-guide{padding:clamp(3.5rem,7vw,6.5rem) 0;background:color-mix(in srgb,currentColor 4%,transparent)}
.service-field-guide .guide-shell{width:min(1120px,calc(100% - 40px));margin:auto}
.service-field-guide .guide-kicker{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;opacity:.72}
.service-field-guide h2{max-width:18ch;margin:.65rem 0 1rem;font-size:3.4rem;line-height:1.03;letter-spacing:0}
.service-field-guide .guide-intro{max-width:72ch;font-size:1.08rem;line-height:1.75}
.service-field-guide .guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem 2rem;margin-top:2.5rem}
.service-field-guide article{padding-top:1.15rem;border-top:2px solid currentColor}
.service-field-guide article h3{margin:0 0 .55rem;font-size:1.22rem;letter-spacing:0}
.service-field-guide article p,.service-field-guide .guide-local p,.service-field-guide .guide-call p{line-height:1.7}
.service-field-guide .guide-lower{display:grid;grid-template-columns:1.25fr .75fr;gap:2rem;margin-top:2.5rem;align-items:start}
.service-field-guide .guide-local,.service-field-guide .guide-call{padding:1.4rem;border:1px solid currentColor;border-radius:6px}
.service-field-guide .guide-call a{display:inline-flex;margin-top:.75rem;font-weight:800;text-decoration:underline;text-underline-offset:4px}
@media(max-width:720px){.service-field-guide .guide-shell{width:min(100% - 28px,1120px)}.service-field-guide .guide-grid,.service-field-guide .guide-lower{grid-template-columns:1fr}.service-field-guide h2{font-size:2.25rem}.service-field-guide{padding:3.5rem 0 6.5rem}}

/* Contextual service photography: exterior drain access */
.expect{background-image:linear-gradient(105deg,rgba(30,67,59,.96),rgba(30,67,59,.72)),url("/__site-assets/plumberhollyspringsnc.com/images/holly-springs-drain-service-bg.jpg?cfv=assetfix-20260513d-1788140092536");background-size:cover;background-position:center;color:#fff}
.expect-head h2,.expect-head p,.expect .eyebrow{color:#fff}
.expect li{background:rgba(255,255,255,.94);color:var(--ink);box-shadow:0 14px 30px rgba(0,0,0,.16)}
.expect li p{color:#536461}

/* Company-first conversion upgrade */
.conversion-proof{padding:clamp(58px,7vw,96px) max(20px,calc((100% - 1180px)/2));background:#173d35;color:#fff}.conversion-proof__inner{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:clamp(34px,6vw,80px);align-items:center}.conversion-proof__eyebrow{margin:0 0 12px;color:#b58a65;font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.conversion-proof h2{margin:0 0 18px;color:#fff;font-size:clamp(36px,4.4vw,58px);line-height:1.02}.conversion-proof p{max-width:720px;margin:0;color:#e5ecec;font-size:17px;line-height:1.65}.conversion-proof ul{margin:0;padding:0;list-style:none;border-top:1px solid #ffffff44}.conversion-proof li{display:flex;gap:12px;padding:15px 0;border-bottom:1px solid #ffffff44;font-weight:800}.conversion-proof li span{color:#b58a65}.conversion-proof a{grid-column:2;justify-self:start;display:inline-flex;padding:14px 20px;background:#b58a65;color:#173d35;font-weight:900;text-decoration:none}.conversion-proof--editorial{border-block:8px double #b58a65}.conversion-proof--ledger{box-shadow:inset 12px 0 #b58a65}.conversion-proof--lab{background:linear-gradient(135deg,#173d35,#10282c)}.conversion-proof--dispatch{border-top:10px solid #b58a65}.conversion-proof--desert{background:linear-gradient(110deg,#173d35,#6e352c)}.conversion-proof--map{border-bottom:12px solid #b58a65}.conversion-proof--field{outline:1px solid #ffffff22;outline-offset:-18px}.conversion-proof--bright{border-top:12px solid #b58a65}.conversion-proof--classic{background:linear-gradient(90deg,#173d35,#3d4857)}
@media(max-width:700px){.conversion-proof{padding:52px 20px}.conversion-proof__inner{grid-template-columns:1fr;gap:28px}.conversion-proof h2{font-size:34px}.conversion-proof p{font-size:16px}.conversion-proof a{grid-column:1;width:100%;justify-content:center;min-height:54px;align-items:center}h1,.hero h1,.ca-hero h1{font-size:min(40px,10.25vw)!important;line-height:1.02!important}}
/* Mobile readability guard: keep long display headings scannable without changing this site's visual identity. */
@media (max-width: 600px) {
  h1 {
    max-width: 100% !important;
    font-size: clamp(36px, 10.25vw, 42px) !important;
    line-height: 1.04 !important;
    overflow-wrap: normal;
    word-break: normal;
  }

  h2 {
    max-width: 100% !important;
    font-size: clamp(30px, 9vw, 38px) !important;
    line-height: 1.08 !important;
    overflow-wrap: normal;
    word-break: normal;
  }
}
