/*
Theme Name: H&H Brothers
Theme URI: https://hh-brothers.rocky-toad-4733.chatgpt.site/
Author: H&H Brothers
Description: A faithful WordPress adaptation of the H&H Brothers website mockup.
Version: 2.0.0
Requires at least: 6.4
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: hh-brothers
*/

@font-face{font-family:HHGeist;src:url('assets/fonts/geist.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:HHBaskerville;src:url('assets/fonts/libre-baskerville.woff2') format('woff2');font-weight:400 700;font-style:normal;font-display:swap}

:root{--green:#073c31;--green-deep:#043128;--green-soft:#365f50;--cream:#f5efdf;--paper:#fbfaf5;--sand:#d9c6a0;--ink:#17251f;--muted:#65716b;--line:#dedfd8}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:HHGeist,Arial,sans-serif;line-height:1.6}
body .wp-site-blocks{padding:0}
body .wp-site-blocks>*{margin-block-start:0}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%;height:auto}
.hh-wrap{width:min(1180px,calc(100% - 48px));margin:0 auto}
.hh-section{padding:104px 0}
.hh-section h1,.hh-section h2,.hh-section h3,.hh-section p,.hh-hero h1,.hh-page-hero h1,.hh-about-hero h1{margin-top:0}
.hh-section h2,.hh-hero h1,.hh-page-hero h1,.hh-about-hero h1,.hh-contact-intro h1,.hh-quote-cta h2{font-family:HHBaskerville,Georgia,serif;font-weight:400;letter-spacing:-.035em}
.hh-section h2{font-size:clamp(2.25rem,4.2vw,4.3rem);line-height:1.06;margin-bottom:24px}
.hh-eyebrow{color:var(--green-soft);font-size:.76rem;font-weight:750;letter-spacing:.15em;text-transform:uppercase;margin:0 0 18px}
.hh-eyebrow-light{color:#e4d6b8}

.hh-topbar{background:var(--green-deep);color:#e7e2d5;font-size:.78rem}
.hh-topbar-inner{display:flex;justify-content:space-between;align-items:center;padding:9px 0;line-height:1.45}
.hh-topbar a{font-weight:650;color:inherit}
.hh-site-header{position:relative;z-index:30;background:rgba(251,250,245,.97);border-bottom:1px solid rgba(7,60,49,.09)}
.hh-nav-wrap{min-height:91px;display:grid;grid-template-columns:290px 1fr auto;align-items:center;gap:24px}
.hh-wordmark{width:270px;display:flex;align-items:center}
.hh-wordmark img{width:100%;height:auto;object-fit:contain}
.hh-nav{display:flex;justify-content:center;gap:36px;list-style:none;margin:0;padding:0}
.hh-nav a{font-size:.93rem;font-weight:620}
.hh-nav a:hover,.hh-text-link:hover{color:var(--green-soft)}
.hh-btn{min-height:48px;padding:0 21px;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:3px;font-size:.87rem;font-weight:720;letter-spacing:.01em;transition:.2s ease;cursor:pointer;text-decoration:none}
.hh-btn-green{color:#fff;background:var(--green);border-color:var(--green)}
.hh-btn-green:hover{background:#0b4a3c;color:#fff}
.hh-btn-cream{color:var(--green);background:var(--cream);border-color:var(--cream)}
.hh-btn-cream:hover{background:#fff;color:var(--green)}
.hh-btn-ghost{color:#fff;border-color:rgba(255,255,255,.55);background:transparent}
.hh-btn-ghost:hover{border-color:#fff;background:rgba(255,255,255,.08);color:#fff}
.hh-button-row{display:flex;gap:12px;flex-wrap:wrap}
.hh-text-link{display:inline-flex;gap:11px;align-items:center;color:var(--green);font-size:.88rem;font-weight:720;padding-bottom:3px;border-bottom:1px solid #9caea4}
.hh-text-link span{font-size:1.15em}

.hh-hero{min-height:690px;position:relative;color:#fff;overflow:hidden;background:var(--green) url('assets/images/hh-hero.webp') center/cover no-repeat}
.hh-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,38,31,.93) 0%,rgba(3,38,31,.76) 35%,rgba(3,38,31,.10) 70%,rgba(3,38,31,.05))}
.hh-hero-inner{position:relative;z-index:2;padding-top:115px;padding-bottom:130px}
.hh-hero h1{font-size:clamp(3.7rem,7.2vw,6.8rem);line-height:.98;max-width:740px;margin:0 0 28px;color:#fff}
.hh-hero-copy{max-width:590px;font-size:1.12rem;line-height:1.75;color:#f1eee4;margin:0 0 34px}
.hh-hero-tag{position:absolute;z-index:2;right:0;bottom:0;background:var(--cream);color:var(--green);padding:21px 39px;font-family:HHBaskerville,Georgia,serif;font-size:1.04rem}
.hh-trust-row{background:var(--cream);border-bottom:1px solid #e0d6c1}
.hh-trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.hh-trust-grid>div{display:flex;gap:15px;align-items:center;padding:25px 22px;border-right:1px solid #d8ccb6}
.hh-trust-grid>div:first-child{padding-left:0}.hh-trust-grid>div:last-child{border-right:0}
.hh-trust-grid b{color:#9b8f75;font:400 .74rem HHBaskerville,Georgia,serif}
.hh-trust-grid span{color:var(--green);font-size:.86rem;font-weight:680}
.hh-intro-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:110px;align-items:end}
.hh-lead-block p{color:#45544d;font-size:1.05rem;line-height:1.8;margin:0 0 27px}
.hh-services-home{background:#eef0e9}
.hh-section-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:40px}
.hh-section-head h2{margin-bottom:0}
.hh-service-feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.hh-service-feature{background:var(--paper);border:1px solid #e1e3da}
.hh-service-feature img{width:100%;height:335px;object-fit:cover}
.hh-service-feature-body{padding:34px 36px 40px}
.hh-service-feature-body h3{font:400 2rem HHBaskerville,Georgia,serif;margin:0 0 14px}
.hh-service-feature-body>p:not(.hh-eyebrow){color:#5d6963;line-height:1.7;margin:0 0 24px}
.hh-reviews-section{background:var(--cream)}
.hh-reviews-grid{display:grid;grid-template-columns:1fr .85fr;gap:100px;align-items:center}
.hh-reviews-copy{color:#53615a;max-width:600px;line-height:1.8;margin:0 0 28px}
.hh-review-card{padding:50px;background:#fffdf8;box-shadow:0 24px 65px rgba(35,52,43,.08)}
.hh-stars{color:#a47f34;letter-spacing:5px;font-size:1.2rem;margin:0 0 28px}
.hh-review-card blockquote{margin:0 0 22px;color:var(--green);font:400 1.85rem/1.45 HHBaskerville,Georgia,serif}
.hh-review-note{color:#68736d;line-height:1.6;margin:0 0 22px}
.hh-review-source{font-size:.76rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase;color:#8a7d62}

.hh-quote-cta{background:var(--green);color:#fff;padding:76px 0}
.hh-quote-cta-inner{display:flex;justify-content:space-between;align-items:center;gap:60px}
.hh-quote-cta h2{font-size:clamp(2.25rem,4vw,4rem);line-height:1.06;margin:0;max-width:780px;color:#fff}
.hh-footer{background:#032a23;color:#e7e3d8;padding:70px 0 28px}
.hh-footer-grid{display:grid;grid-template-columns:1.5fr .6fr .8fr;gap:80px;padding-bottom:55px}
.hh-footer-brand img{width:180px;margin-bottom:25px}
.hh-footer-brand p{max-width:420px;color:#bac8c2;line-height:1.7;margin:0}
.hh-footer h4{color:#e7d7b7;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;margin:3px 0 20px}
.hh-footer-links{display:flex;flex-direction:column;gap:12px;font-size:.9rem}
.hh-footer-links span{color:#aebbb6}
.hh-footer-bottom{border-top:1px solid rgba(255,255,255,.13);padding-top:23px;display:flex;justify-content:space-between;color:#849992;font-size:.73rem}

.hh-page-hero{background:var(--green);color:#fff;background-image:radial-gradient(circle at 85% 20%,rgba(201,180,135,.16),transparent 30%)}
.hh-page-hero-inner{padding:110px 0 118px;max-width:900px;margin:0 auto;text-align:center}
.hh-page-hero h1,.hh-about-hero h1{font-size:clamp(3.4rem,6.4vw,6.1rem);line-height:1.02;margin:0 0 26px;color:#fff}
.hh-page-hero-inner>p:last-child{margin:0 auto;max-width:700px;color:#dbe4df;font-size:1.05rem;line-height:1.7}
.hh-service-section-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:100px;align-items:start}
.hh-service-sticky{position:sticky;top:30px}
.hh-service-sticky h2{font-size:clamp(2.2rem,3.7vw,3.8rem)}
.hh-service-sticky>p:not(.hh-eyebrow){color:#5e6a64;line-height:1.7;margin:0 0 28px}
.hh-service-sticky img{width:100%;aspect-ratio:4/3;object-fit:cover}
.hh-service-list{border-top:1px solid #ccd2cb}
.hh-service-list-item{min-height:82px;display:grid;grid-template-columns:55px 1fr;align-items:center;gap:15px;border-bottom:1px solid #d7dbd5}
.hh-service-list-item span{color:#a0947a;font-size:.7rem}
.hh-service-list-item h3{margin:0;color:#26372f;font:500 1.12rem HHGeist,Arial,sans-serif}
.hh-handyman-band{background:#eef0e9}
.hh-service-note{background:var(--cream);margin-top:35px;padding:35px}
.hh-service-note p{color:#81765f;font-size:.78rem;margin:0 0 9px}
.hh-service-note h3{color:var(--green);font:400 1.55rem/1.3 HHBaskerville,Georgia,serif;margin:0 0 20px}

.hh-about-hero{background:var(--green);color:#fff;padding:118px 0;background-image:linear-gradient(110deg,transparent 55%,rgba(223,205,169,.09) 55%)}
.hh-about-hero-grid{display:grid;grid-template-columns:1fr .75fr;gap:110px;align-items:end}
.hh-about-hero h1{margin:0}
.hh-about-hero-quote{border-left:1px solid rgba(255,255,255,.28);padding:12px 0 12px 38px}
.hh-about-hero-quote p{font:400 1.55rem/1.5 HHBaskerville,Georgia,serif;color:#f2eee2;margin:0 0 16px}
.hh-about-hero-quote span{color:#cbbfa8;font-size:.8rem}
.hh-story-grid{display:grid;grid-template-columns:.6fr 1.4fr;gap:100px}
.hh-story-aside{border-top:1px solid #aab2ab;padding-top:22px}
.hh-story-number{color:var(--green);font:400 5.3rem/1 HHBaskerville,Georgia,serif}
.hh-story-aside p{color:#65716b;max-width:260px;line-height:1.65}
.hh-story-copy{max-width:750px}
.hh-story-copy h2{font-size:clamp(2.8rem,4.6vw,4.8rem)}
.hh-story-copy>p:not(.hh-eyebrow){color:#53615a;font-size:1rem;line-height:1.82;margin:0 0 22px}
.hh-story-copy .hh-story-lead{color:var(--green);font:400 1.5rem/1.6 HHBaskerville,Georgia,serif}
.hh-story-copy .hh-btn{margin-top:10px}
.hh-values-band{background:var(--cream);padding:75px 0}
.hh-values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:55px}
.hh-values-grid>div{border-top:1px solid #c7b998;padding-top:22px}
.hh-values-grid span{color:#9c8a65;font-size:.7rem}
.hh-values-grid h3{font:400 1.6rem HHBaskerville,Georgia,serif;margin:14px 0 8px;color:var(--green)}
.hh-values-grid p{color:#6d6a60;line-height:1.6;font-size:.9rem;margin:0}

.hh-contact-main{padding:95px 0 110px;background:linear-gradient(90deg,var(--cream) 0 43%,var(--paper) 43%)}
.hh-contact-shell{display:grid;grid-template-columns:.85fr 1.15fr;gap:100px;align-items:start}
.hh-contact-intro{padding:40px 0}
.hh-contact-intro h1{color:var(--green);font-size:clamp(3.4rem,5.4vw,5.4rem);line-height:1.02;margin:0 0 28px}
.hh-contact-intro>p:not(.hh-eyebrow){color:#5c665f;max-width:500px;line-height:1.75}
.hh-contact-details{margin-top:55px;display:grid;gap:25px}
.hh-contact-details>div{display:grid;gap:6px}
.hh-contact-details span{color:#8f836b;font-size:.72rem;font-weight:750;letter-spacing:.1em;text-transform:uppercase}
.hh-contact-details a,.hh-contact-details strong{color:var(--green);font-size:.98rem;font-weight:650}
.hh-contact-form-shell{background:#fff;padding:45px;box-shadow:0 25px 70px rgba(20,45,35,.08)}
.hh-contact-form{display:grid;gap:21px}
.hh-form-row{display:grid;grid-template-columns:1fr 1fr;gap:17px}
.hh-contact-form-shell .wp-block-shortcode{margin:0}.hh-field{display:grid;gap:8px}.hh-field label{display:grid;gap:8px;color:#34433c;font-size:.76rem;font-weight:700}
.hh-field input,.hh-field select,.hh-field textarea{width:100%;border:1px solid #d7dbd5;background:#fcfcf9;border-radius:2px;color:var(--ink);font:400 .92rem HHGeist,Arial,sans-serif;padding:13px 14px;outline:none}
.hh-field input:focus,.hh-field select:focus,.hh-field textarea:focus{border-color:var(--green-soft);box-shadow:0 0 0 2px rgba(54,95,80,.08)}
.hh-field textarea{min-height:142px;resize:vertical}
.hh-submit{width:100%;min-height:53px;border:1px solid var(--green);border-radius:3px;background:var(--green);color:#fff;cursor:pointer;font:720 .87rem HHGeist,Arial,sans-serif;padding:0 21px}
.hh-submit:hover{background:#0b4a3c}
.hh-form-note{color:#8a928d;font-size:.72rem;text-align:center;margin:-7px 0 0}
.hh-notice{padding:1rem 1.2rem;margin-bottom:20px}.hh-notice--success{background:#dcecdf;color:#164527}.hh-notice--error{background:#f5ded7;color:#702d1c}.hh-honeypot{position:absolute!important;left:-9999px!important}

@media(max-width:900px){
  .hh-wrap{width:min(100% - 34px,760px)}.hh-section{padding:78px 0}.hh-topbar-inner span:first-child{display:none}.hh-topbar-inner{justify-content:center}
  .hh-nav-wrap{grid-template-columns:230px 1fr;min-height:auto;padding:14px 0}.hh-wordmark{width:220px}.hh-nav-cta{display:none}.hh-nav{justify-content:flex-end;gap:18px}.hh-nav a{font-size:.82rem}
  .hh-hero{min-height:620px}.hh-hero::before{background:linear-gradient(90deg,rgba(3,38,31,.92),rgba(3,38,31,.58))}.hh-hero-inner{padding-top:90px}.hh-hero-tag{font-size:.9rem;padding:16px 20px}
  .hh-trust-grid{grid-template-columns:1fr 1fr}.hh-trust-grid>div:nth-child(2){border-right:0}.hh-trust-grid>div:first-child{padding-left:22px}.hh-trust-grid>div:nth-child(-n+2){border-bottom:1px solid #d8ccb6}
  .hh-intro-grid,.hh-reviews-grid,.hh-service-section-grid,.hh-about-hero-grid,.hh-story-grid,.hh-contact-shell{grid-template-columns:1fr;gap:55px}.hh-service-feature-grid{grid-template-columns:1fr}.hh-service-feature img{height:300px}
  .hh-review-card{padding:38px}.hh-quote-cta-inner{align-items:flex-start;flex-direction:column;gap:25px}.hh-footer-grid{grid-template-columns:1fr 1fr}.hh-footer-brand{grid-column:1/-1}
  .hh-service-sticky{position:static}.hh-service-sticky img{max-height:420px}.hh-about-hero{padding:90px 0}.hh-about-hero-quote{max-width:600px}.hh-values-grid{grid-template-columns:1fr;gap:28px}
  .hh-contact-main{background:var(--cream)}.hh-contact-form-shell{margin-bottom:10px}
}
@media(max-width:600px){
  .hh-wrap{width:calc(100% - 28px)}.hh-nav-wrap{grid-template-columns:1fr;justify-items:center;gap:10px;padding:10px 0 14px}.hh-wordmark{width:210px}.hh-nav{gap:20px}
  .hh-hero{min-height:640px}.hh-hero-inner{padding-top:80px}.hh-hero h1{font-size:3.55rem}.hh-hero-copy{font-size:1rem}.hh-hero-tag{left:0;right:auto}
  .hh-trust-grid{grid-template-columns:1fr 1fr}.hh-trust-grid>div{padding:17px 10px;gap:8px}.hh-trust-grid>div:first-child{padding-left:10px}.hh-trust-grid span{font-size:.75rem}
  .hh-section-head{align-items:flex-start}.hh-desktop-link{display:none}.hh-service-feature-body{padding:28px 25px 32px}.hh-service-feature img{height:245px}.hh-review-card{padding:28px}.hh-review-card blockquote{font-size:1.45rem}
  .hh-footer-grid{grid-template-columns:1fr;gap:40px}.hh-footer-brand{grid-column:auto}.hh-footer-bottom{flex-direction:column;gap:7px}.hh-page-hero-inner{padding:80px 0 85px}.hh-page-hero h1,.hh-about-hero h1{font-size:3.25rem}
  .hh-about-hero-quote{padding-left:22px}.hh-service-section-grid{gap:40px}.hh-story-grid{gap:50px}.hh-contact-main{padding:60px 0 75px}.hh-contact-shell{gap:35px}.hh-contact-intro{padding:0}.hh-contact-form-shell{padding:26px 20px}.hh-form-row{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
