:root{--ink:#111820;--muted:#405467;--forest:#111820;--gold:#80bff1;--bg:#fff;--line:#c9d9e5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.65 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}a:hover{color:#1c527b}a:focus-visible,button:focus-visible{outline:3px solid #1c527b;outline-offset:5px}img{max-width:100%}.wrap{width:min(1240px,90%);margin:auto}.skip{position:absolute;top:-100px;background:white;padding:10px;z-index:20}.skip:focus{top:10px}header{background:white;border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:24px 0}.brand{font-size:2rem;line-height:1.1;font-weight:900;letter-spacing:.055em}.brand span{display:block;font-size:.75rem;letter-spacing:.04em;margin-top:7px;max-width:260px;line-height:1.4}.nav nav{display:flex;gap:22px;font-size:.9rem}.nav nav a{padding:8px 0}.nav nav a[aria-current]{border-bottom:2px solid var(--forest)}.menu-toggle{display:none}.nav-call,.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:15px 25px;min-height:48px;font-weight:700;font-size:1rem;border-radius:3px}.nav-call{background:var(--forest);color:#fff}.gold{background:var(--gold);color:#111820}.gold:hover{background:#a8d7fa;color:#111820}.nav-call:hover{background:#17466c;color:white}.outline{border:1px solid currentColor}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:500;letter-spacing:-.035em;line-height:1.1;margin:0 0 24px}h1{font-size:clamp(2.8rem,5.2vw,5rem)}h2{font-size:clamp(2.1rem,3.5vw,3.45rem)}h3{font-size:1.65rem}p{margin:0 0 23px}.eyebrow{font:700 .875rem/1.5 Arial,sans-serif;letter-spacing:.11em;color:#405467;margin-bottom:20px}.intro{font-size:1.15rem;max-width:640px}.hero{position:relative;isolation:isolate;background:#111820;color:white;min-height:650px;display:flex;align-items:center;padding:90px 0}.hero-backdrop{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 65%;z-index:-2}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,29,23,.9),rgba(6,29,23,.65) 55%,rgba(6,29,23,.16));z-index:-1}.hero h1{max-width:880px}.hero .eyebrow{color:#80bff1}.hero .intro{color:#e9f4fc}.actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}.service-strip{background:var(--forest);color:#fff}.service-strip .wrap{display:grid;grid-template-columns:repeat(3,1fr);text-align:center}.service-strip a{padding:24px 16px;font-size:1rem;border-right:1px solid #405467}.service-strip a:last-child{border:0}.service-strip a:hover{background:#17466c;color:white}.section{padding:96px 0}.section-intro{max-width:680px;color:var(--muted)}.catalog{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:44px}.catalog-card{display:flex;flex-direction:column;border:1px solid var(--line);background:white;padding:30px;transition:transform .2s}.catalog-card:hover{transform:translateY(-4px);color:var(--ink);border-color:#1c527b}.catalog-card h3{font-size:1.8rem}.catalog-card p{color:var(--muted)}.catalog-card span{font-size:.9rem;font-weight:700;margin-top:auto;color:#17466c}.catalog-card:first-child{background:#e9f4fc}.catalog-card .eyebrow{color:#1c527b;margin-bottom:24px}.service-thumb{display:block;width:calc(100% + 60px);max-width:none;height:240px;object-fit:cover;object-position:50% 65%;margin:-30px -30px 28px}.commercial{background:#111820;color:white}.commercial-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:90px;align-items:center}.commercial .eyebrow{color:#80bff1}.commercial p:not(.eyebrow){max-width:600px;color:#e9f4fc}.plan-number{border-right:1px solid #405467;text-align:center;padding:20px 40px 20px 0}.plan-number strong{display:block;font-family:Georgia,serif;font-weight:400;font-size:clamp(7rem,16vw,13rem);line-height:1;color:#80bff1}.plan-number span{display:block;margin-top:24px;letter-spacing:.12em;font-size:.875rem}.about{background:#e9f4fc}.about-grid,.area-grid,.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.about .large{font-size:1.3rem}.company-logo{display:block;width:min(280px,100%);height:auto;margin:0 0 32px}.signature{display:flex;flex-direction:column;border-top:1px solid #c9d9e5;padding-top:24px}.signature span{font-size:.9rem;color:var(--muted)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:45px}.steps article{border-top:1px solid #a9bfce;padding-top:25px}.steps b{font:400 2rem Georgia,serif;color:#1c527b;display:block;margin-bottom:20px}.steps h3{font-size:1.6rem}.steps p{color:var(--muted)}.area{background:#e9f4fc;padding:75px 0}.area ul{list-style:none;padding:0;margin:0}.area li{border-bottom:1px solid #a9bfce;padding:13px 0;font-size:1.1rem}.contact{text-align:center;background:#111820;color:white}.contact .eyebrow{color:#80bff1}.contact .actions{justify-content:center}.phone{display:block;font-size:clamp(2rem,4vw,3.7rem);font-weight:700}.small{display:block;font-size:.875rem;margin-top:22px}.page-banner{padding:85px 0;background:#e9f4fc}.page-banner h1{max-width:1000px}.page-banner p{max-width:700px}.page-cta{background:#e9f4fc;padding:50px 0}.page-cta .wrap{display:flex;justify-content:space-between;align-items:center;gap:25px}.page-cta h2{font-size:2rem;margin:0}.breadcrumb{display:block;font-size:.9rem;margin-bottom:28px}.detail-list{padding-left:24px}.detail-list li{padding:12px 0;border-bottom:1px solid var(--line)}.detail-grid aside{padding:36px;background:#e9f4fc;border-top:4px solid var(--forest)}.detail-grid aside h2{font-size:2rem}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:70px;padding:65px 0 40px}footer{background:#111820;color:#e9f4fc}footer .brand{display:block;margin-bottom:25px}footer p{font-size:.9rem;color:#c9d9e5}footer h3{font:700 1rem Arial,sans-serif;margin-bottom:20px}footer .footer-grid>div>a:not(.brand){display:block;margin:8px 0;font-size:.95rem}.copyright{padding:24px 0;border-top:1px solid #405467;font-size:.875rem;color:#c9d9e5}.project-photo{margin:0;background:#e9f4fc;overflow:hidden}.project-photo a{display:block}.project-photo img{display:block;width:100%;height:auto}.project-photo figcaption{padding:18px 22px;font-size:.95rem;font-weight:700}.photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:30px}.project-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;align-items:start}.featured-projects{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin:35px 0}.featured-projects img{aspect-ratio:4/5;object-fit:cover;object-position:50% 65%}.service-photo-section{padding:0 0 70px}.service-photo-section .project-photo{max-width:740px;margin:auto}.comparison{background:#e9f4fc}.project-photo a:focus-visible{outline-offset:-5px}.gallery-empty{max-width:760px;text-align:center;min-height:260px}@media(max-width:1100px){.nav{flex-wrap:wrap;gap:18px}.nav nav{order:3;width:100%;justify-content:space-between}.catalog{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.nav{padding:18px 0;gap:14px}.brand{font-size:1.65rem}.brand span{max-width:210px;font-size:.75rem}.nav-call{display:none}.menu-toggle{display:block;background:none;border:1px solid #a9bfce;color:var(--ink);font:700 1rem Arial;padding:12px 17px;min-height:48px}.nav nav{display:none;flex-direction:column;gap:0;padding-top:10px}.nav nav.is-open{display:flex}.nav nav a{padding:12px 0}.hero{min-height:590px;padding:68px 0}.hero:after{background:rgba(6,29,23,.76)}h1{font-size:clamp(2.5rem,10vw,4rem)}.hero h1 br{display:none}.service-strip .wrap{grid-template-columns:1fr}.service-strip a{padding:15px;border-right:0;border-bottom:1px solid #405467}.section{padding:64px 0}.catalog,.steps,.featured-projects,.project-gallery{grid-template-columns:1fr}.catalog{gap:24px}.commercial-grid,.about-grid,.area-grid,.detail-grid{grid-template-columns:1fr;gap:36px}.plan-number{display:flex;align-items:center;gap:25px;border-right:0;border-bottom:1px solid #405467;padding:0 0 30px;text-align:left}.plan-number strong{font-size:7rem}.plan-number span{margin:0;max-width:160px}.page-banner{padding:55px 0}.page-cta .wrap{display:block}.page-cta h2{margin-bottom:20px}.footer-grid{grid-template-columns:1fr;gap:28px}.featured-projects img{aspect-ratio:4/3}.photo-pair{gap:12px}.photo-pair figcaption{padding:12px;font-size:.875rem}.detail-grid aside{padding:25px}.hero .actions .button{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.catalog-card{transition:none}}

.photo-credit{font-size:.875rem;line-height:1.6;margin:14px 0 0}.photo-credit a{text-decoration:underline}.stock-feature{max-width:900px;margin:30px auto 0}.hero-backdrop{object-position:center}.project-gallery img{aspect-ratio:3/2;object-fit:cover}
/* Westra: bold type, warm brass, structured service index. */
:root{--ink:#111820;--forest:#111820;--muted:#405467;--gold:#80bff1;--line:#c9d9e5}body{background:#ffffff}h1,h2,h3{font-family:Arial,Helvetica,sans-serif;font-weight:800;letter-spacing:-.045em}h1,h2{line-height:1.04}h3{line-height:1.2;letter-spacing:-.025em}.brand{font-size:2.25rem;letter-spacing:-.055em}.brand span{letter-spacing:.04em;font-weight:600}.nav-call,.button{border-radius:0}.nav{padding:25px 0}.nav nav a[aria-current]{border-color:#1c527b}.eyebrow{color:#1c527b;font-size:.875rem;letter-spacing:.12em}.westra-hero{background:#111820;color:#fff;padding:60px 0 75px;min-height:0;display:block;isolation:auto}.westra-hero:after{display:none}.hero-layout{display:grid;grid-template-columns:1.08fr 1fr;gap:50px;align-items:center}.hero-copy{padding:30px 0}.westra-hero h1{font-size:clamp(3.3rem,6.2vw,6.1rem);line-height:1.01;letter-spacing:-.065em;margin:30px 0}.westra-hero h1 em{font-style:normal;color:#80bff1}.westra-hero .eyebrow{color:#80bff1}.westra-hero .intro{font-size:1.125rem;max-width:500px;color:#c9d9e5}.hero-image{margin:0;position:relative;padding:0 0 48px}.hero-image .hero-backdrop{position:static;width:100%;height:540px;object-fit:cover;object-position:60% center;display:block}.hero-image figcaption{position:absolute;bottom:0;left:0;width:100%;padding:16px 18px;background:#80bff1;color:#111820;font-size:.875rem;letter-spacing:.065em;font-weight:700}.catalog{display:block;margin-top:45px;border-top:2px solid #111820}.catalog-card,.catalog-card:first-child{display:grid;grid-template-columns:50px 1.1fr 1fr 105px;align-items:center;gap:25px;background:transparent;border:0;border-bottom:1px solid #c9d9e5;padding:25px 8px;transition:background .15s}.catalog-card:hover{transform:none;background:#e9f4fc;border-color:#c9d9e5}.catalog-card h3{font-size:1.35rem;margin:0}.catalog-card p{font-size:1rem;line-height:1.55;margin:0}.catalog-card span{margin:0;color:#1c527b;font-size:.875rem;text-align:right}.service-number{font-size:.875rem;font-weight:400;color:#405467;font-variant-numeric:tabular-nums}.services-section h2{font-size:clamp(2.4rem,4.5vw,4rem)}.commercial{background:#80bff1;color:#111820}.commercial-grid{grid-template-columns:.7fr 1.3fr;gap:70px}.commercial h2{font-size:clamp(2.3rem,4.5vw,4.2rem)}.commercial .eyebrow,.commercial p:not(.eyebrow){color:#405467}.commercial .button{background:#111820;color:#fff}.plan-number{border-right:1px solid #405467}.plan-number strong{font-family:Arial,Helvetica,sans-serif;font-weight:800;letter-spacing:-.09em;color:#111820;font-size:clamp(7rem,17vw,15rem)}.plan-number span{font-weight:700;font-size:.875rem;letter-spacing:.08em}.about{background:#e9f4fc}.about h2{font-size:clamp(2rem,3.5vw,3rem)}.company-logo{border-radius:0;width:240px}.steps{gap:50px}.steps b{font-family:Arial,Helvetica,sans-serif;font-weight:800;font-size:3rem;letter-spacing:-.06em;color:#1c527b}.steps article{border-top:2px solid #111820}.area{background:#e9f4fc}.area li{font-weight:600}.contact{background:#111820}.contact h2{font-size:clamp(2.5rem,6vw,5rem)}.contact .phone{font-weight:400}.page-banner{background:#111820;color:white;border-bottom:8px solid #80bff1}.page-banner h1{font-size:clamp(2.6rem,5.3vw,4.6rem)}.page-banner .eyebrow,.page-banner .breadcrumb{color:#80bff1}.page-banner p{color:#c9d9e5}.detail-grid aside{background:#e9f4fc;border-top-color:#1c527b}.page-cta{background:#80bff1}.page-cta .button{background:#111820;color:white}.project-photo{background:#111820;color:white}.project-photo figcaption{font-weight:600;letter-spacing:.02em}.inspiration-gallery{grid-template-columns:1.25fr 1fr;gap:40px;align-items:start}.inspiration-gallery .project-photo:nth-child(2){margin-top:110px}.inspiration-gallery img{aspect-ratio:4/5;object-fit:cover}.comparison{background:#e9f4fc}footer{background:#111820}.footer-grid{padding-top:70px}.copyright{border-color:#405467}footer h3{color:#80bff1}@media(max-width:1100px){.hero-layout{gap:30px}.hero-image .hero-backdrop{height:500px}.catalog-card{grid-template-columns:35px 1.2fr 1fr;gap:20px}.catalog-card span{grid-column:2;text-align:left}}@media(max-width:720px){.nav{padding:18px 0}.brand{font-size:1.8rem}.hero-layout{grid-template-columns:1fr;gap:30px}.westra-hero{padding:35px 0 45px}.hero-copy{padding:0}.westra-hero h1{font-size:clamp(3.2rem,12.4vw,5rem);margin:25px 0}.westra-hero h1 br{display:block}.hero-image .hero-backdrop{height:320px}.hero-image figcaption{font-size:.8rem}.hero-image{padding-bottom:46px}.catalog-card{grid-template-columns:30px 1fr;gap:12px;padding:24px 0}.catalog-card h3{font-size:1.25rem}.catalog-card p,.catalog-card span{grid-column:2}.catalog-card p{margin:0}.service-number{align-self:start;padding-top:3px}.commercial-grid{grid-template-columns:1fr;gap:35px}.plan-number{border-right:0;border-bottom:1px solid #405467}.plan-number strong{font-size:7.5rem}.commercial h2{font-size:2.6rem}.inspiration-gallery{grid-template-columns:1fr;gap:28px}.inspiration-gallery .project-photo:nth-child(2){margin-top:0}.inspiration-gallery img{aspect-ratio:4/3}.page-banner h1{overflow-wrap:break-word}.section{padding:60px 0}}@media(prefers-reduced-motion:reduce){.catalog-card{transition:none}}

.actual-projects img{height:auto;aspect-ratio:auto;object-fit:contain}.actual-projects{align-items:start}.single-project{max-width:720px;margin:32px auto 0}.service-projects{padding-top:32px}.pine-project{background:#e9f4fc}.actual-projects .project-photo{margin:0}.project-gallery.actual-projects{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}@media(max-width:900px){.project-gallery.actual-projects{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.project-gallery.actual-projects{grid-template-columns:1fr}.photo-pair.actual-projects{gap:10px}.photo-pair.actual-projects figcaption{font-size:.875rem;padding:12px 8px}}

/* Blue, black and white branding from the supplied Westra logo. */
header{background:#80bff1;border-bottom:1px solid #598bb1}.nav{padding:12px 0;gap:26px}.brand{display:block;flex-shrink:0;line-height:0}.brand-logo{display:block;width:250px;height:auto;max-width:100%}.nav nav a{font-weight:600}.nav nav a[aria-current]{border-color:#111820}.nav-call{background:#111820;color:#fff}.nav-call:hover{background:#17466c;color:#fff}.company-logo{width:min(420px,100%);border-radius:0}.footer-grid .brand{width:300px;max-width:100%}.footer-grid .brand-logo{width:100%}.menu-toggle{border-color:#315c7b;color:#111820}.hero-image figcaption{background:#80bff1;color:#111820}.gold:hover{background:#a8d7fa;color:#111820}.commercial .button:hover,.page-cta .button:hover{background:#17466c;color:#fff}.commercial .eyebrow,.commercial p:not(.eyebrow){color:#183348}.plan-number{border-color:#3f6c90}.commercial .plan-number span{color:#111820}footer a:hover{color:#a8d7fa}.photo-credit{color:#c9d9e5}@media(max-width:1100px){.nav nav{padding-bottom:6px}}@media(max-width:720px){.brand-logo{width:210px}.nav{padding:10px 0;gap:12px}.nav nav{padding-bottom:8px}.company-logo{width:min(360px,100%)}}@media(max-width:360px){.brand-logo{width:180px}.menu-toggle{padding:10px 12px}}
/* Westra's project-led presentation. */
h1,h2{font-weight:600;letter-spacing:-.045em;line-height:1.12}h3{font-weight:650;letter-spacing:-.025em}.wrap{width:min(1240px,90%)}.section{padding:96px 0}.estate-hero{position:relative;isolation:isolate;min-height:680px;background:#111820;color:white;display:flex;align-items:center;padding:90px 0 115px}.estate-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 62%;z-index:-2}.estate-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,21,30,.88),rgba(9,21,30,.6) 48%,rgba(9,21,30,.16));z-index:-1}.estate-content h1{font-size:clamp(3.3rem,6vw,5.7rem);max-width:750px;font-weight:600;line-height:1.04;letter-spacing:-.055em}.estate-content>p:not(.eyebrow){font-size:1.15rem;max-width:520px;color:#eef5fa}.estate-content .eyebrow{font-size:.875rem;color:#a8d7fa;letter-spacing:.11em;max-width:600px}.estate-location{position:absolute;bottom:0;left:5%;right:5%;border-top:1px solid #ffffff55;padding:22px 0;font-size:.8rem;letter-spacing:.12em}.button,.nav-call{border-radius:3px;font-weight:600}.services-section h2{font-size:clamp(2.25rem,4vw,3.5rem)}.service-collections{display:grid;grid-template-columns:1.1fr 1.1fr 1fr;gap:40px;margin-top:50px}.service-collection{border-top:2px solid #224e6e;padding-top:24px}.collection-number{font-size:.875rem;color:#526979;display:block;margin-bottom:26px}.service-collection h3{font-size:1.75rem;margin-bottom:26px;min-height:68px}.service-collection>a{display:flex;justify-content:space-between;gap:15px;border-top:1px solid #d7e3ec;padding:15px 0;font-size:1rem;line-height:1.45}.service-collection>a:hover{color:#1c527b}.service-collection>a span{flex-shrink:0}.collection-note{font-size:1rem;margin-top:24px;color:#405467}.home-portfolio{background:#edf5fa}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:35px}.section-heading h2{margin-bottom:0}.text-link{font-size:1rem;border-bottom:1px solid #224e6e;padding-bottom:6px;white-space:nowrap}.portfolio-layout{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:24px;align-items:start}.portfolio-piece{display:block;color:#111820}.portfolio-piece:nth-child(2){margin-top:55px}.portfolio-piece:nth-child(3){margin-top:110px}.portfolio-piece img{display:block;width:100%;height:380px;object-fit:cover;object-position:center 65%}.portfolio-piece:first-child img{height:490px}.portfolio-piece>div{padding:20px 0}.portfolio-piece p{font-size:.875rem;color:#405467;margin:0 0 8px}.portfolio-piece h3{font-size:1.5rem;margin:0;line-height:1.2}.commercial{background:#111820;color:#fff}.commercial h2{font-size:clamp(2.4rem,4vw,3.6rem)}.commercial .eyebrow{color:#a8d7fa}.commercial p:not(.eyebrow){color:#d6e5f0}.commercial .plan-number strong{color:#80bff1}.commercial .plan-number span{color:#d6e5f0}.commercial .plan-number{border-color:#455b6b}.commercial .button{background:#80bff1;color:#111820}.commercial .button:hover{background:#a8d7fa;color:#111820}.plan-number strong{font-weight:500;font-size:clamp(7rem,13vw,11rem)}.about{background:white}.about .large{font-size:1.2rem}.about h2{font-size:clamp(2.25rem,3.5vw,3.2rem)}.process{background:#f3f7fa}.steps b{font-size:2.25rem;font-weight:500;color:#1c527b}.steps h3{font-size:1.35rem}.area{background:#e8f3fc}.contact h2{font-size:clamp(2.5rem,4.8vw,4.2rem)}.page-banner{padding:72px 0;border-bottom:4px solid #80bff1}.page-banner h1{font-size:clamp(2.6rem,4.5vw,4.1rem);font-weight:600}.detail-grid aside h2{font-size:1.8rem}.project-gallery.actual-projects img{aspect-ratio:4/3;object-fit:cover;object-position:center 65%}.photo-pair.actual-projects img{aspect-ratio:3/4;object-fit:cover}.project-photo figcaption{font-size:.95rem;font-weight:500}.single-project.actual-projects img{aspect-ratio:auto;object-fit:contain}.brand-logo{width:230px}.footer-grid .brand-logo{width:100%}@media(max-width:900px){.service-collections{gap:25px;grid-template-columns:1fr 1fr}.service-collection:last-child{grid-column:1/-1}.service-collection h3{min-height:0}.portfolio-layout{gap:16px}.portfolio-piece img{height:300px}.portfolio-piece:first-child img{height:390px}}@media(max-width:720px){.section{padding:64px 0}.estate-hero{min-height:650px;padding:70px 0 120px}.estate-content h1{font-size:clamp(3.1rem,11vw,4.8rem)}.estate-hero:after{background:rgba(9,21,30,.68)}.estate-location{font-size:.75rem;line-height:1.7;letter-spacing:.07em}.estate-content .actions{flex-direction:column;align-items:stretch}.service-collections{grid-template-columns:1fr;gap:35px;margin-top:35px}.service-collection:last-child{grid-column:auto}.collection-number{margin-bottom:18px}.service-collection h3{font-size:1.6rem;margin-bottom:20px}.section-heading{display:block}.section-heading .text-link{display:inline-block;margin-top:24px}.portfolio-layout{grid-template-columns:1fr;gap:24px}.portfolio-piece:nth-child(2),.portfolio-piece:nth-child(3){margin-top:0}.portfolio-piece img,.portfolio-piece:first-child img{height:330px}.portfolio-piece>div{padding:16px 0}.brand-logo{width:210px}.commercial h2{font-size:2.45rem}.page-banner{padding:55px 0}.photo-pair.actual-projects img{aspect-ratio:3/4}.contact .phone{font-size:2.4rem}}@media(max-width:360px){.brand-logo{width:180px}}

/* Customer reviews */
.customer-reviews{background:#fff}.review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:36px}.customer-review{display:flex;flex-direction:column;margin:0;padding:32px;background:#f3f7fa;border:1px solid #c9d9e5;border-top:3px solid #80bff1;border-radius:3px}.review-stars{color:#8a5900;font-size:1.4rem;letter-spacing:.12em;margin-bottom:20px}.customer-review blockquote{margin:0 0 28px;font-size:1.1rem;line-height:1.7}.customer-review blockquote p{margin:0}.customer-review figcaption{margin-top:auto;display:flex;flex-direction:column;gap:3px}.customer-review figcaption strong{font-size:1rem}.customer-review figcaption span{font-size:.875rem;color:#405467}@media(max-width:720px){.review-grid{grid-template-columns:1fr;gap:20px}.customer-review{padding:25px}.customer-review blockquote{font-size:1rem}}

/* Swipeable customer reviews: native touch scrolling, with keyboard and button controls. */
.review-carousel{margin:30px auto 0;max-width:860px}.review-hint{color:#405467;font-size:.9rem;margin-bottom:16px}.review-track{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#80bff1 #edf2f6;padding:4px 0 14px}.review-track .customer-review{flex:0 0 100%;min-width:0;box-sizing:border-box;scroll-snap-align:start;scroll-snap-stop:always}.review-track:focus-visible,.review-arrow:focus-visible{outline:3px solid #174e79;outline-offset:4px}.review-controls{display:flex;align-items:center;justify-content:center;gap:24px;margin-top:16px}.review-controls[hidden]{display:none}.review-arrow{display:grid;place-items:center;width:48px;height:48px;background:#fff;border:1px solid #405467;border-radius:50%;color:#172f42;font-size:1.5rem;cursor:pointer}.review-arrow:hover{background:#dfefff}.review-arrow:disabled{opacity:.35;cursor:default}.review-counter{min-width:100px;text-align:center;font-size:.9rem;color:#405467}@media(max-width:720px){.review-track{gap:16px}.review-track .customer-review{padding:24px}.review-hint{font-size:.85rem}}

/* Preserve the full framing of the supplied crew photos. */
.crew-gallery{margin:30px 0}.crew-gallery .project-photo img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain}.crew-projects{background:#edf5fa}.crew-gallery .project-photo a{display:block}

/* Before/after in reading order, without cropping either photograph. */
.limb-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:start}.limb-pair .project-photo img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain}.limb-pair figcaption strong{font-weight:700}@media(max-width:600px){.limb-pair{grid-template-columns:1fr;gap:20px}}

/* Quiet, full-bleed homepage film beneath the existing content. */
.estate-video{object-position:center;pointer-events:none;background:#111820 url('/images/projects/westra-video-poster.jpg') center/cover no-repeat}
.estate-hero:after{background:linear-gradient(90deg,rgba(9,21,30,.88),rgba(9,21,30,.68) 48%,rgba(9,21,30,.45))}
@media(max-width:720px){.estate-hero:after{background:rgba(9,21,30,.72)}}
