:root{--ink:#17191b;--paper:#f7f7f5;--white:#fff;--red:#e50914;--blue:#123ad6;--green:#2d8f16;--accent:var(--red);--muted:#6f7377;--line:#dedede}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--paper);color:var(--ink);line-height:1.6}a{color:inherit;text-decoration:none}.wrap{width:min(1180px,calc(100% - 40px));margin:auto}.site-header{position:absolute;z-index:20;width:100%;color:#fff;background:#000;border-bottom:1px solid #000}.nav-wrap{min-height:88px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px;font-weight:800;line-height:1.05;text-transform:uppercase;letter-spacing:.03em}.brand small{display:block;font-size:9px;font-weight:500;letter-spacing:.13em;margin-top:6px}.brand-mark{display:grid;place-items:center;width:46px;height:46px;border:2px solid var(--accent);font-size:16px}.custom-logo{max-height:60px;width:auto}.main-nav{display:flex;align-items:center;gap:30px}.main-nav ul{display:flex;gap:26px;list-style:none;margin:0;padding:0}.main-nav a{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.menu-toggle{display:none;background:none;border:0;color:#fff;font-size:28px}.btn{display:inline-block;background:var(--accent);color:#fff!important;padding:15px 22px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:12px;border:1px solid var(--accent);transition:.2s}.btn:hover{transform:translateY(-2px)}.btn-small{padding:11px 15px}.btn-ghost{background:transparent;border-color:#ffffff8c;margin-left:8px}.btn-light{background:#fff;color:var(--ink)!important;border-color:#fff}.hero{min-height:760px;display:flex;align-items:center;position:relative;color:#fff;background-color:#202224;background-size:cover;background-position:center 48%;overflow:hidden}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#000d 0%,#0008 48%,#0002 100%)}.hero-content{position:relative;z-index:2;padding-top:60px}.eyebrow{display:block;color:#ffffff;font-weight:800;font-size:11px;letter-spacing:.22em;margin-bottom:18px}.eyebrow.dark{color:var(--blue)}.hero h1,.page-hero h1{font-size:clamp(54px,7vw,94px);line-height:.96;letter-spacing:-.045em;margin:0 0 25px;max-width:900px}.hero p{max-width:660px;font-size:19px;color:#e5e5e5;margin-bottom:34px}.trust{background:#fff;border-bottom:1px solid var(--line)}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}.trust-grid div{padding:27px 20px;border-right:1px solid var(--line)}.trust-grid div:first-child{border-left:1px solid var(--line)}.trust strong,.trust span{display:block}.trust strong{font-size:20px}.trust span{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.section{padding:105px 0}.section-head{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:end;margin-bottom:55px}.section h2,.review-band h2{font-size:clamp(38px,5vw,62px);line-height:1.02;letter-spacing:-.04em;margin:0}.section-head p{color:#666;margin:0;font-size:17px}.services{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #bbb}.services article{padding:34px 26px 20px 0;border-right:1px solid #ccc;min-height:250px}.services article+article{padding-left:26px}.services span{font-size:11px;color:var(--green);font-weight:800}.services h3{font-size:22px;margin:42px 0 10px}.services p{color:#6e6e6e;font-size:14px}.work-section{background:#181a1b;color:#fff}.section-head.light p{color:#aaa}.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.project{position:relative;min-height:390px;background:#252728;overflow:hidden}.project img{width:100%;height:100%;position:absolute;object-fit:cover;transition:.4s}.project:hover img{transform:scale(1.025)}.project:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 40%,#000c)}.project-label{position:absolute;z-index:2;bottom:25px;left:28px}.project-label h3{font-size:26px;margin:0 0 3px}.project-label span{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#ddd}.project-placeholder{display:grid;place-items:center;height:390px;color:#777;background:linear-gradient(135deg,#222,#303234);text-transform:uppercase;letter-spacing:.14em;font-size:11px}.project-placeholder.big{grid-column:1/-1}.split{display:grid;grid-template-columns:1fr 1fr;gap:90px}.reasons p{padding:0 0 25px;margin:0 0 25px;border-bottom:1px solid var(--line);color:#666}.reasons strong{color:var(--ink)}.review-band{background:var(--accent);color:#fff;padding:70px 0}.review-inner{display:flex;justify-content:space-between;align-items:center;gap:40px}.review-band .eyebrow{color:#fff}.review-band h2{font-size:46px}.review-band p{margin-bottom:0}.contact-cta{text-align:center}.contact-cta p{max-width:700px;margin:25px auto 32px;color:#666}.site-footer{background:#111314;color:#bbb;padding:70px 0 25px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:70px}.footer-title{font-size:20px;color:#fff;font-weight:800}.site-footer strong{color:#fff}.site-footer ul{list-style:none;padding:0}.copyright{border-top:1px solid #ffffff1c;margin-top:50px;padding-top:20px;font-size:11px}.page-hero{background:#181a1b;color:#fff;padding:180px 0 80px}.page-hero h1{font-size:clamp(48px,7vw,80px)}.page-hero p{max-width:700px;color:#bbb}.prose{max-width:900px}.prose img,.project-hero-image{max-width:100%;height:auto}.archive-grid{grid-template-columns:repeat(2,1fr)}@media(max-width:800px){.nav-wrap{min-height:72px}.menu-toggle{display:block}.main-nav{display:none;position:absolute;top:72px;left:0;width:100%;background:#151718;padding:25px 20px;flex-direction:column;align-items:flex-start}.main-nav.open{display:flex}.main-nav ul{flex-direction:column}.hero{min-height:690px}.hero h1{font-size:56px}.trust-grid{grid-template-columns:1fr 1fr}.section{padding:75px 0}.section-head,.split{grid-template-columns:1fr;gap:25px}.services{grid-template-columns:1fr 1fr}.project-grid,.archive-grid{grid-template-columns:1fr}.review-inner{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr}.btn-ghost{margin:10px 0 0}.hero-actions .btn{display:table}.services article{min-height:220px}}

.story-image{width:100%;height:360px;object-fit:cover;margin-top:38px}.team-section{background:#fff}.photo-story{display:grid;grid-template-columns:1.35fr .85fr .85fr;gap:16px}.photo-story img{width:100%;height:430px;object-fit:cover}.photo-story img:nth-child(2),.photo-story img:nth-child(3){height:430px}@media(max-width:800px){.photo-story{grid-template-columns:1fr}.photo-story img,.photo-story img:nth-child(2),.photo-story img:nth-child(3){height:330px}.story-image{height:320px}}

/* Cougar Hill default branding */
.default-logo-link,.custom-logo-link{display:flex;align-items:center}.default-site-logo,.custom-logo{display:block;max-height:62px;width:auto;background:#fff;padding:5px 8px;border-radius:3px}.footer-logo-link{display:inline-block;margin-bottom:18px}.footer-logo{display:block;width:118px;height:auto;background:#fff;padding:7px;border-radius:3px}.footer-title{margin-top:2px}@media(max-width:800px){.default-site-logo,.custom-logo{max-height:50px}.footer-logo{width:105px}}

/* Cougar Hill logo palette */
.main-nav a:hover{color:#fff;border-bottom:2px solid var(--blue)}
.btn{box-shadow:inset 0 -3px 0 rgba(0,0,0,.12)}
.btn:hover{background:#c80710;border-color:#c80710}
.trust strong{color:var(--blue)}
.work-section{border-top:5px solid var(--blue)}
.review-band{border-top:5px solid var(--green)}
.contact-cta .btn{background:var(--blue);border-color:var(--blue)}
.contact-cta .btn:hover{background:#0d2da8;border-color:#0d2da8}
.site-footer{border-top:5px solid var(--green)}

.service-gallery article{padding-top:0;overflow:hidden}.service-gallery article+article{padding-top:0}.service-gallery img{display:block;width:100%;height:250px;object-fit:cover;margin:0 0 24px}.service-gallery span{display:block}.service-gallery h3{margin:18px 0 10px}@media(max-width:800px){.service-gallery img{height:230px}}

/* v1.6 trust + social */
.bbb-trust{display:flex;align-items:center;gap:14px;padding:18px 20px;border:1px solid #e5e7eb;border-left:5px solid var(--blue,#0b32d9);background:#fff;border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.06)}
.bbb-trust .bbb-mark{font-weight:900;font-size:1.15rem;color:var(--blue,#0b32d9);letter-spacing:.02em}.bbb-trust p{margin:2px 0 0}.bbb-trust a{font-weight:800;text-decoration:none}.bbb-trust a:hover{text-decoration:underline}
.trust-bbb{color:inherit;text-decoration:none}.trust-bbb:hover strong{text-decoration:underline}
.social-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.social-link{width:42px;height:42px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#fff;color:#20242a;text-decoration:none;transition:transform .2s ease,background .2s ease,color .2s ease}.social-link:hover{transform:translateY(-2px);background:var(--red,#e10600);color:#fff}.social-link svg{width:20px;height:20px;fill:currentColor}.social-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.footer-bbb{margin-top:16px;font-size:.92rem}.footer-bbb a{font-weight:800}

/* BBB supplied accreditation badge */
.bbb-section{padding-top:55px;padding-bottom:55px}.bbb-trust{display:flex;align-items:center;gap:28px;padding:24px 28px}.bbb-badge-link{display:block;flex:0 0 auto}.bbb-badge{display:block;width:min(360px,38vw);height:auto}.bbb-trust strong{display:block;font-size:1.25rem;margin-bottom:4px}.footer-bbb-badge{display:block;width:220px;max-width:100%;height:auto;margin-top:12px;border-radius:4px}@media(max-width:700px){.bbb-trust{flex-direction:column;align-items:flex-start}.bbb-badge{width:min(100%,360px)}}

/* v1.9 official BBB dynamic seal */
.bbb-dynamic-seal{display:inline-block;line-height:1.15}.bbb-dynamic-seal img{display:block;max-width:100%;height:auto}.bbb-trust .bbb-dynamic-seal{flex:0 0 auto}.footer-bbb .bbb-dynamic-seal{margin-top:12px}

/* Live Google Reviews */
.google-reviews-section{background:#f7f8f8}.google-reviews-live{margin-top:2rem}.reviews-connect{margin-top:2rem;padding:2rem;border:1px solid #d9dede;border-radius:12px;background:#fff}.reviews-connect strong{font-size:1.2rem}.reviews-connect p{margin:.6rem 0 0;max-width:760px}.review-actions{display:flex;gap:1rem;flex-wrap:wrap;margin-top:1.5rem}.btn-ghost-dark{background:transparent!important;color:#1f2933!important;border:1px solid #1f2933!important}

/* v2.4 video hero */
.hero-video{background-image:none;background:#000;}
.hero-video-bg{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;background:#000;}
.hero-video-bg iframe{position:absolute;top:50%;left:50%;width:100vw;height:56.25vw;min-width:177.78vh;min-height:100%;transform:translate(-50%,-50%);border:0;}
.hero-video .hero-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(0,0,0,.84) 0%,rgba(0,0,0,.55) 48%,rgba(0,0,0,.22) 100%);}
.hero-video:after{display:none;}
.hero-video .hero-content{z-index:2;}
@media(max-width:800px){.hero-video-bg iframe{width:177.78vh;height:100vh;min-width:100%;min-height:56.25vw;}}


/* v2.5 Meet the Team */
.meet-team-section{background:#fff}.team-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.team-card{background:#f7f7f5;border:1px solid var(--line);overflow:hidden}.team-card img{display:block;width:100%;height:390px;object-fit:cover;object-position:center 30%}.team-card-body{padding:26px}.team-card h3{font-size:26px;line-height:1.1;margin:0 0 7px}.team-card span{display:block;color:var(--blue);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;margin-bottom:16px}.team-card p{color:#666;font-size:14px;margin:0}.team-card:nth-child(1) img{object-position:center 34%}.team-card:nth-child(2) img{object-position:center 32%}.team-card:nth-child(3) img{object-position:center 32%}@media(max-width:800px){.team-cards{grid-template-columns:1fr}.team-card img{height:420px}}

/* v2.7 hero video timing and height: 10% shorter than original */
.hero-video{min-height:684px;}
@media(max-width:800px){.hero-video{min-height:621px;}}

/* v2.8 Google Reviews and Facebook Recommendations */
.customer-reviews-section{background:#f7f8f8}
.customer-reviews-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.customer-review-panel{display:flex;flex-direction:column;min-width:0;padding:30px;background:#fff;border:1px solid var(--line);border-top:4px solid var(--blue);border-radius:12px}
.review-source-label{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--blue)}
.review-source h3{font-size:26px;line-height:1.2;margin:10px 0 22px}
.reviews-feed{min-width:0;overflow-wrap:anywhere;overflow:auto}
.reviews-feed iframe,.reviews-feed img{max-width:100%}
.reviews-empty{color:#666;flex:1}.reviews-empty p{margin:0 0 12px}
.customer-review-panel .review-actions{margin-top:auto;padding-top:24px}
.customer-review-panel .btn:focus-visible{outline:3px solid var(--blue);outline-offset:4px}
@media(max-width:800px){.customer-reviews-grid{grid-template-columns:1fr}.customer-review-panel{padding:24px}}
@media(max-width:400px){.customer-review-panel .review-actions{flex-direction:column}.customer-review-panel .btn{text-align:center}}