:root{--navy:#092945;--navy-2:#123b5d;--orange:#f47920;--ink:#162d40;--muted:#62717c;--cream:#f6f3ed;--line:#dce2e6;--white:#fff}
/* Header and main-banner quote buttons use the requested orange/white treatment. */
.site-header nav a.nav-quote{display:inline-flex;align-items:center;justify-content:center;align-self:center;min-height:48px;padding:12px 18px;border-radius:4px;background:var(--orange);color:#fff;font-weight:700;line-height:1.4;transition:background-color .2s ease,box-shadow .2s ease}
.site-header nav a.nav-quote:hover,.site-header nav a.nav-quote:focus-visible{background:#e76a10;color:#fff}
.site-header nav a.nav-quote:after{display:none}
.site-header nav a.nav-quote:focus-visible{outline:3px solid var(--navy);outline-offset:3px}
.site-header.menu-open nav a.nav-quote{align-self:stretch;margin-top:10px;padding:14px 18px}
.home-hero .hero-copy .button.primary{color:#fff}
@media(prefers-reduced-motion:reduce){.site-header nav a.nav-quote{transition:none}}
/* Responsive hero: original photograph with live, sharp text and real buttons. */
.home-hero{position:relative;isolation:isolate;min-height:620px;display:flex;align-items:center;background:#092945;color:#fff;overflow:hidden}
.hero-media{position:absolute;inset:0;z-index:-2;display:block;overflow:hidden}
.hero-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:60% 35%}
.home-hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(5,26,44,.95) 0%,rgba(5,26,44,.85) 28%,rgba(5,26,44,.7) 39%,rgba(5,26,44,.2) 59%,rgba(5,26,44,0) 76%);pointer-events:none}
.hero-content{padding-block:64px 80px}
.hero-copy{max-width:590px}
.hero-copy h1{font-size:clamp(3.2rem,4.45vw,4.65rem);font-weight:700;line-height:1.08;letter-spacing:-.045em;margin:0 0 26px;overflow-wrap:anywhere}
.hero-copy h1>span,.hero-copy h1>em{display:block}
.hero-copy h1 em{font-style:normal;color:#ffae73}
.hero-description{max-width:520px;font-size:1.125rem;line-height:1.75;color:#f4f7fa;margin:0 0 28px;text-wrap:pretty}
.hero-copy .actions{gap:14px;max-width:560px}
.hero-copy .button{min-height:56px;padding:14px 24px;font-size:1rem;border-radius:3px}
.hero-copy .light-outline{background:rgba(5,26,44,.35);border-color:#e3ecf0}
.hero-copy .light-outline:hover{background:#fff;color:#092945}
.hero-location{max-width:570px;margin:24px 0 0;font-size:.875rem;line-height:1.6;color:#e4edf3}
.hero-caption{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:13px;position:absolute;bottom:18px;right:max(24px,calc((100vw - 1296px)/2));margin:0;padding:13px 20px;background:rgba(5,25,42,.9);border-left:2px solid #f47920;font-size:.875rem;line-height:1.5;letter-spacing:.05em;font-weight:700;color:#fff}
.hero-caption i{font-style:normal;color:#ffad71}
.hero-trust{background:#faf8f4;border-bottom:1px solid #e2e0da}
.hero-trust-list{display:flex;align-items:center;justify-content:center;gap:0;list-style:none;margin-block:0;padding:26px 0}
.hero-trust-list li{display:flex;align-items:center;justify-content:center;gap:13px;padding:0 36px;font-size:1rem;line-height:1.5;font-weight:600;color:#092945;min-width:0}
.hero-trust-list li>span{overflow-wrap:anywhere}
.hero-trust-list li+li{border-left:1px solid #d2d8dc}
.hero-trust-list svg{width:32px;height:32px;flex-shrink:0;color:#e36912}
@media(min-width:761px) and (max-width:1100px){
 .hero-content{padding-block:60px 98px}.hero-copy{max-width:530px}.hero-copy h1{font-size:clamp(3rem,5.5vw,3.75rem)}
 .hero-description{max-width:465px;font-size:1.0625rem}.hero-photo{object-position:67% 30%}
 .home-hero::after{background:linear-gradient(90deg,rgba(5,26,44,.95),rgba(5,26,44,.82) 43%,rgba(5,26,44,.16) 78%,transparent)}
 .hero-trust-list li{padding-inline:22px;gap:10px;font-size:.9375rem}.hero-trust-list svg{width:28px;height:28px}
}
@media(max-width:760px){
 .home-hero{--hero-mobile-photo-height:clamp(380px,112vw,680px);display:block;min-height:0}
 .hero-media{height:var(--hero-mobile-photo-height);bottom:auto}
 .hero-photo{object-position:right top}
 .home-hero::after{bottom:auto;height:var(--hero-mobile-photo-height);background:linear-gradient(180deg,rgba(9,41,69,0) 25%,rgba(9,41,69,.12) 42%,rgba(9,41,69,.75) 63%,rgba(9,41,69,.96) 84%,#092945 100%)}
 .hero-content{width:calc(100% - 40px);padding-top:clamp(224px,63vw,390px);padding-bottom:24px}
 .hero-copy{max-width:600px;margin-inline:auto}
 .hero-copy h1{font-size:clamp(2rem,9.3vw,3.5rem);line-height:1.12;letter-spacing:-.04em;margin-bottom:20px;text-shadow:0 2px 14px #061a2c55}
 .hero-description{max-width:none;font-size:1rem;line-height:1.7;margin-bottom:24px;color:#f0f5f9}
 .hero-copy .actions{flex-direction:column;align-items:stretch;max-width:none;gap:12px}
 .hero-copy .button{width:100%;min-height:54px;justify-content:center;padding:14px 18px;font-size:1rem}
 .hero-copy .light-outline{background:#092945}
 .hero-location{display:none}
 .hero-caption{position:relative;inset:auto;justify-content:center;gap:clamp(5px,2vw,12px);width:calc(100% - 40px);margin:0 auto;padding:2px 0 25px;background:none;border:0;font-size:.75rem;letter-spacing:.03em}
 .hero-trust-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:calc(100% - 24px);padding-block:22px}
 .hero-trust-list li{flex-direction:column;gap:10px;padding:0 8px;text-align:center;font-size:.875rem;line-height:1.45;align-self:stretch;justify-content:flex-start}
 .hero-trust-list svg{width:30px;height:30px}
 .hero-trust-list li>span{max-width:12ch}
}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:#fff;font:400 16px/1.65 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:auto}button,input,summary{font:inherit}button,a,input,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Manrope',sans-serif}h2{font-size:clamp(2rem,3.4vw,3.4rem);line-height:1.16;letter-spacing:-.045em;margin-bottom:22px}h3{font-size:1.4rem;line-height:1.25;letter-spacing:-.025em}.wrap{width:min(100% - 96px,1296px);margin-inline:auto}.section{padding-block:96px}.eyebrow{font-size:.75rem;line-height:1.5;font-weight:800;letter-spacing:.15em;color:#bd5102;margin-bottom:18px}.skip-link{position:absolute;top:-100px;left:24px;background:#fff;padding:12px;z-index:100}.skip-link:focus{top:10px}
.site-header{height:88px;display:flex;align-items:center;padding:0 clamp(24px,5vw,76px);gap:36px;border-bottom:1px solid #e8eaec;background:#fff;position:sticky;top:0;z-index:30}.brand{display:block;flex-shrink:0}.brand img{width:72px;height:72px;object-fit:contain}.site-header nav{display:flex;gap:28px;margin-left:auto}.site-header nav a{white-space:nowrap;font-weight:600;font-size:.94rem;color:#42505d;padding:32px 0;position:relative}.site-header nav a:hover,.site-header nav a.active{color:var(--navy)}.site-header nav a.active:after{content:'';position:absolute;height:3px;background:var(--orange);inset:auto 0 0}.header-cta{padding:14px 18px;border-radius:4px;background:var(--navy);color:#fff;font-weight:700;font-size:.9rem;white-space:nowrap}.menu-button{display:none;background:none;border:0;padding:10px;cursor:pointer}.menu-button span{display:block;width:25px;height:2px;background:var(--navy);margin:5px}
.actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:54px;padding:14px 23px;font-size:.875rem;line-height:1.4;font-weight:800;border:1px solid transparent;transition:background .2s,color .2s;letter-spacing:.02em}.button.primary{color:#fff;background:var(--orange)}.button.primary:hover{background:#ff984b}.button.light-outline{border-color:rgba(255,255,255,.5);color:#fff}.button.light-outline:hover{background:#fff;color:var(--navy)}
.trust-strip{background:var(--navy);color:#fff;border-top:1px solid #2a455c}.trust-strip .wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;padding-block:25px}.trust-strip p{margin:0;display:flex;align-items:center;gap:16px;font-size:.9rem;font-weight:600}.trust-strip span{font-size:.75rem;color:#ffa564;font-weight:700;letter-spacing:.03em}.section-heading{display:grid;grid-template-columns:1.1fr .9fr;gap:100px;align-items:end;margin-bottom:40px}.section-heading h2{margin-bottom:0}.section-heading>p,.section-heading>div>p:not(.eyebrow){color:var(--muted);max-width:540px;font-size:1.0625rem;line-height:1.75;margin-bottom:0}.section-heading>div>.text-link{margin-top:20px}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.service-card{border:1px solid var(--line);display:flex;flex-direction:column;background:#fff}.service-photo>img{aspect-ratio:1.4;object-fit:cover}.service-copy{padding:30px 26px;display:flex;flex-direction:column;align-items:flex-start;flex-grow:1}.service-number{font-size:.69rem;letter-spacing:.1em;color:#8b572f;font-weight:700;display:block;margin-bottom:15px}.service-copy h3{font-size:1.6rem;margin-bottom:16px}.service-copy p{color:var(--muted);font-size:.98rem;line-height:1.75;margin-bottom:25px}.text-link{display:inline-flex;align-items:center;gap:20px;font-size:.875rem;font-weight:800;line-height:1.5;padding:8px 0;border-bottom:1px solid #c0cad1;color:var(--navy)}.text-link span{color:#bc4b00;font-size:1.2rem}.text-link:hover{color:#b44d03;border-bottom-color:var(--orange)}.service-copy .text-link{margin-top:auto}
.about-band{background:var(--cream);padding:72px 0}.about-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:72px;align-items:center}.about-image{position:relative}.about-image img{width:100%;height:auto}.about-image:after{content:'';position:absolute;width:60px;height:60px;bottom:-12px;right:-12px;border-bottom:3px solid var(--orange);border-right:3px solid var(--orange)}.about-copy p:not(.eyebrow){color:var(--muted);line-height:1.8}.about-copy h2{font-size:clamp(2rem,3vw,3rem)}
.transformation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.comparison{position:relative;aspect-ratio:1.5;background:#e9edef;overflow:hidden}.comparison>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.comparison .before-image{clip-path:inset(0 calc(100% - var(--reveal)) 0 0)}.compare-label{position:absolute;top:18px;padding:5px 12px;background:rgba(9,41,69,.85);color:#fff;font-size:.75rem;font-weight:700;pointer-events:none}.before-label{left:18px}.after-label{right:18px}.compare-line{position:absolute;inset:0 auto 0 var(--reveal);width:2px;background:#fff;transform:translateX(-50%);pointer-events:none;z-index:2}.compare-line b{display:grid;place-items:center;width:40px;height:40px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;border-radius:50%;color:var(--navy);font-size:1.1rem;box-shadow:0 2px 15px #0002}.comparison input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;z-index:3}.comparison:focus-within{outline:3px solid var(--orange);outline-offset:4px}.project-description{padding:24px 0 0}.project-description h3{margin-bottom:6px}.project-description p{color:var(--muted);margin:0}.section-end{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-top:30px}.section-end>span{font-size:.875rem;color:var(--muted)}
/* Our Process — six steps with consistent architectural line icons. */
.process{position:relative;isolation:isolate;background:var(--navy);color:#fff}
.process::before{content:"";position:absolute;inset:0;z-index:-1;background:url('../images/pergola-architectural-background.webp') center right/cover no-repeat;opacity:.18;pointer-events:none}
.process .eyebrow{color:#ffad71}
.process .section-heading{align-items:center}
.process .section-heading>p{color:#c7d4df}
.process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:0;list-style:none;margin:44px 0 0}
.process-grid li{position:relative;isolation:isolate;min-width:0;padding:30px;background:linear-gradient(145deg,#153b57,#10314b);border:1px solid #36546b;border-radius:14px;box-shadow:0 8px 24px #0316261a;transition:border-color var(--motion-medium) ease,box-shadow var(--motion-medium) ease}
.process-grid li::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;background:#fff;opacity:0;pointer-events:none;transition:opacity var(--motion-medium) ease}
.process-step-top{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:26px}
.process-icon{display:grid;place-items:center;width:76px;height:76px;flex:0 0 76px;color:#fff;background:#ffad71;border:1px solid #ffc397;border-radius:18px}
.process-icon svg{display:block;width:40px;height:40px}
.process-step-marker{text-align:right;color:#b9cbd9}
.process-step-marker span{display:block;font-size:.75rem;font-weight:700;letter-spacing:.16em;line-height:1.4;margin-bottom:5px}
.process-step-marker strong{display:block;font:600 1.5rem/1.2 'Manrope',sans-serif;letter-spacing:.01em;color:#ffad71}
.process-grid h3{font-size:1.1875rem;line-height:1.45;letter-spacing:-.025em;margin:0 0 14px;color:#fff}
.process-grid p{color:#c7d4df;font-size:1rem;line-height:1.75;margin:0}
.process-grid h3,.process-grid p,.process-step-marker,.process-step-marker strong{transition:color var(--motion-medium) ease}
@media(hover:hover) and (pointer:fine){
 .process-grid li:hover{border-color:var(--orange);box-shadow:inset 0 0 0 1px var(--orange),0 8px 24px #0316261a}
 .process-grid li:hover::before{opacity:1}
 .process-grid li:hover h3{color:var(--navy)}
 .process-grid li:hover p{color:#435969}
 .process-grid li:hover .process-step-marker{color:#536674}
 .process-grid li:hover .process-step-marker strong{color:#ad4900}
}
@media(hover:none), (pointer:coarse){
 .process-grid li.is-touch-active{border-color:var(--orange);box-shadow:inset 0 0 0 1px var(--orange),0 8px 24px #0316261a}
 .process-grid li.is-touch-active::before{opacity:1}
 .process-grid li.is-touch-active h3{color:var(--navy)}
 .process-grid li.is-touch-active p{color:#435969}
 .process-grid li.is-touch-active .process-step-marker{color:#536674}
 .process-grid li.is-touch-active .process-step-marker strong{color:#ad4900}
}

.quality{display:grid;grid-template-columns:1fr 1fr;gap:96px;align-items:center}.quality-copy>p:not(.eyebrow){color:var(--muted);line-height:1.8;max-width:490px}.quality-image{position:relative;min-width:0;margin:0}.quality-image>img{width:100%;height:auto;aspect-ratio:1.5;object-fit:contain;background:#f6f3ed}.quality-image::before,.quality-image::after{content:"";position:absolute;width:clamp(32px,4vw,56px);height:clamp(32px,4vw,56px);pointer-events:none}.quality-image::before{top:-9px;left:-9px;border-top:2px solid var(--navy);border-left:2px solid var(--navy)}.quality-image::after{right:-9px;bottom:-9px;border-right:2px solid var(--orange);border-bottom:2px solid var(--orange)}.quality-list{list-style:none;padding:0;margin:24px 0;color:var(--ink);font-weight:500}.quality-list li{padding:12px 0;border-bottom:1px solid var(--line);display:flex;gap:16px}.quality-list li:before{content:'✓';color:#b75006;font-weight:800}.experience{background:var(--cream)}.experience-photo{aspect-ratio:1.92;object-fit:cover}.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.faq .text-link{margin-top:6px}.faq-list{border-top:1px solid var(--line)}.faq details{border-bottom:1px solid var(--line)}.faq summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:24px;cursor:pointer;padding:24px 0;font-weight:700;color:var(--navy)}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';font-size:1.5rem;font-weight:400;color:#aa4a06}.faq details[open] summary:after{content:'−'}.faq details p{color:var(--muted);padding:0 40px 24px 0;margin:0;line-height:1.8}.closing-cta{background:var(--navy);color:#fff;padding:64px 0}.closing-cta>.wrap{display:flex;justify-content:space-between;gap:50px;align-items:center}.closing-cta .eyebrow{color:#ffad71}.closing-cta h2{font-size:clamp(2rem,3vw,3rem);margin-bottom:14px}.closing-cta p:last-child{margin:0;color:#d0dce6}.closing-cta .actions{align-items:stretch;flex-direction:column}.floating-whatsapp{position:fixed;bottom:22px;right:22px;z-index:40;background:#157b43;color:#fff;padding:12px 18px;display:flex;gap:16px;align-items:center;font-weight:700;font-size:.875rem;border-radius:6px;box-shadow:0 4px 20px #0002}
@media(max-width:1280px){.site-header{height:76px;padding-inline:24px}.brand img{width:64px;height:64px}.site-header nav,.header-cta{display:none}.menu-button{display:block;margin-left:auto}.site-header.menu-open nav{display:flex;position:absolute;top:76px;inset-inline:0;background:#fff;flex-direction:column;gap:0;padding:12px 24px 24px;box-shadow:0 14px 24px #09294522;max-height:calc(100dvh - 76px);overflow-y:auto}.site-header.menu-open nav a{padding:13px 0}.site-header.menu-open nav a.active:after{display:none}.section-heading{gap:50px}}
@media(max-width:960px){.wrap{width:calc(100% - 48px)}.section{padding-block:64px}.section-heading{grid-template-columns:1fr;gap:24px}.service-grid{gap:16px}.service-copy{padding:24px 18px}.service-copy h3{font-size:1.3rem}.service-photo>img{aspect-ratio:1.1}.about-grid{gap:40px}.about-copy h2{font-size:2rem}.quality{gap:48px}.process-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.process-grid li{padding:26px}.faq{gap:48px}.trust-strip .wrap{gap:22px}.trust-strip p{align-items:flex-start;gap:10px;font-size:.8rem}.closing-cta>.wrap{gap:30px}}
@media(max-width:680px){html{scroll-padding-top:90px}.wrap{width:calc(100% - 40px)}.site-header{padding-inline:20px}.trust-strip .wrap{grid-template-columns:1fr;padding-block:22px;gap:13px}.trust-strip p{font-size:.875rem;gap:14px}.section{padding-block:54px}.section-heading{margin-bottom:28px}.section-heading>p,.section-heading>div>p:not(.eyebrow){font-size:1rem}.service-grid{grid-template-columns:1fr;gap:24px}.service-photo>img{aspect-ratio:1.5}.service-copy{padding:26px 24px}.service-copy h3{font-size:1.5rem}.about-band{padding-block:48px}.about-grid{grid-template-columns:1fr;gap:36px}.transformation-grid{grid-template-columns:1fr;gap:32px}.comparison{aspect-ratio:1.3}.section-end{align-items:flex-start;flex-direction:column;gap:8px}.process-grid{grid-template-columns:1fr;gap:16px;margin-top:30px}.process-grid li{padding:24px}.process-step-top{margin-bottom:22px}.process-icon{width:64px;height:64px;flex-basis:64px;border-radius:16px}.process-icon svg{width:34px;height:34px}.quality{grid-template-columns:1fr;gap:32px}.quality-image{grid-row:1}.quality h2 br{display:none}.experience-photo{aspect-ratio:1.3;object-position:center}.faq{grid-template-columns:1fr;gap:32px}.faq summary{font-size:1rem;line-height:1.5;padding-block:20px}.faq details p{padding-right:12px;font-size:.95rem}.closing-cta{padding-block:48px}.closing-cta>.wrap{align-items:stretch;flex-direction:column;gap:28px}.closing-cta .actions{max-width:380px}.floating-whatsapp{right:16px;bottom:16px;font-size:.8rem;padding:11px 15px}.eyebrow{font-size:.7rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Commercial projects */
.commercial-projects{background:var(--cream)}
.commercial-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:start}
.commercial-copy>p:not(.eyebrow){color:var(--muted);font-size:1rem;line-height:1.8;margin-bottom:26px}
.commercial-services{margin:0}
.commercial-services>div{padding:18px 0;border-top:1px solid #d9d9d4}
.commercial-services dt{font-size:1.0625rem;font-weight:700;color:var(--navy);margin-bottom:7px}
.commercial-services dd{margin:0;color:var(--muted);font-size:1rem;line-height:1.7}
.commercial-portfolio{min-width:0;padding-top:6px}
.commercial-portfolio h3{font-size:1.125rem;margin-bottom:22px}
.commercial-logos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;list-style:none;margin:0;padding:0}
.commercial-logos li{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;min-width:0;padding:18px 10px;background:#fff;border:1px solid #e2e4e5;text-align:center}
.commercial-logos img{display:block;width:100%;height:auto;aspect-ratio:35/13;object-fit:contain}
.commercial-logos img.commercial-logo-added{height:110px;aspect-ratio:auto;object-fit:contain}
.commercial-logos span{font-size:.875rem;line-height:1.5;color:var(--navy);font-weight:600;min-height:3em;display:flex;align-items:center;justify-content:center}
.commercial-enquiry{display:flex;align-items:center;justify-content:space-between;gap:32px;border-top:1px solid #d9d9d4;padding-top:30px;margin-top:36px}
.commercial-enquiry h3{font-size:1.25rem;margin-bottom:8px}
.commercial-enquiry p{font-size:1rem;color:var(--muted);margin:0;line-height:1.7;max-width:650px}
.commercial-enquiry .button{flex-shrink:0}
@media(max-width:960px){.commercial-grid{grid-template-columns:1fr;gap:30px}.commercial-copy h2 br{display:none}.commercial-portfolio{padding-top:0}.commercial-logos li{padding:22px 16px}.commercial-logos img{max-width:250px}.commercial-logos span{min-height:1.5em}.commercial-enquiry{align-items:flex-start;flex-direction:column;gap:22px}}
@media(max-width:600px){.commercial-logos{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.commercial-logos li{padding:18px 10px;gap:12px}.commercial-logos li:last-child{grid-column:1/-1;width:calc(50% - 6px);justify-self:center}.commercial-logos span{min-height:3em}.commercial-enquiry .button{width:100%}}

/* Customer testimonials */
.testimonials{background:#fff}
.testimonials-videos .video-testimonials{margin-top:0;padding-top:0;border-top:0}
.testimonial-heading h2{color:var(--navy);font-weight:800;text-transform:uppercase;letter-spacing:-.025em}
.testimonials .testimonial-heading .testimonial-tagline{margin:20px 0 0;color:var(--navy-2);font-size:clamp(1.125rem,1.6vw,1.375rem);font-weight:500;line-height:1.5}
.testimonial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.testimonial-card{display:flex;flex-direction:column;min-width:0;margin:0;padding:30px 28px;background:#f8f6f1;border:1px solid #e7e2d9;border-top:3px solid var(--orange)}
.quote-mark{font:4.5rem/.85 Georgia,serif;color:#bc5105;height:45px;display:block}
.testimonial-card blockquote{margin:10px 0 20px}
.testimonial-card blockquote p{font:400 clamp(1.5rem,2vw,1.9rem)/1.35 Georgia,serif;color:var(--navy);margin:0;letter-spacing:-.015em}
.testimonial-detail{font-size:1rem;line-height:1.75;color:#536674;margin-bottom:28px}
.testimonial-card figcaption{display:flex;gap:14px;align-items:center;margin-top:auto;padding-top:22px;border-top:1px solid #dddcd7}
.testimonial-card figcaption img{width:54px;height:54px;flex-shrink:0;object-fit:cover;object-position:center 30%;border-radius:50%}
.testimonial-card figcaption strong{display:block;font-size:1rem;line-height:1.4;color:var(--navy)}
.testimonial-card figcaption span{display:block;font-size:.875rem;line-height:1.6;color:#617481;margin-top:4px}
.testimonial-source{display:flex;gap:20px;justify-content:space-between;align-items:center;margin-top:22px}
.testimonial-source>span{font-size:.875rem;color:#62717c}
.video-testimonials{margin-top:66px;padding-top:52px;border-top:1px solid var(--line)}
.video-testimonials h2{font-size:clamp(1.9rem,3vw,2.8rem);line-height:1.2;letter-spacing:-.04em;margin:0}
.video-testimonials .eyebrow{margin-bottom:12px}
.video-all{justify-self:end}
.video-testimonial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.video-testimonial-card{min-width:0;background:#fff;border:1px solid var(--line);overflow:hidden}
.video-card-label{display:flex;align-items:center;gap:12px;padding:18px 20px;background:#f6f3ed}
.video-card-label h3{font-size:.9375rem;font-weight:700;margin:0;line-height:1.5}
.video-dot{font-size:.875rem;color:#a64000}
.video-testimonial-card iframe{display:block;width:100%;height:600px;border:0;background:#fff}
.video-original{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:16px 20px;font-size:.9375rem;font-weight:700;border-top:1px solid var(--line);color:var(--navy)}
.video-original span{color:#b94e04}.video-original:hover{background:#f6f3ed}
/* Review sliders: native scrolling also works without JavaScript. */
.review-carousel{min-width:0}
.review-card-label{font-size:.875rem;font-weight:700;letter-spacing:.08em;color:#a44704;margin:0 0 20px}
.testimonial-card .testimonial-detail{font-size:1.125rem;line-height:1.8;margin:0 0 20px;color:#435969}
.review-full{display:inline-flex;align-items:center;gap:10px;align-self:flex-start;font-size:.875rem;font-weight:700;color:var(--navy);text-decoration:underline;text-underline-offset:4px;padding:6px 0;margin:0 0 26px}
.review-full span{color:#ad4800}
.review-navigation{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;margin-top:22px}
.review-navigation[hidden]{display:none}
.review-hint{font-size:.875rem;color:var(--muted);margin:0}
.review-controls{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;max-width:100%}
.review-arrow{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:10px 16px;background:#fff;color:var(--navy);border:1px solid #b7c4ce;font:700 .875rem/1.5 'DM Sans',sans-serif;cursor:pointer}
.review-arrow:hover:not(:disabled){background:var(--navy);border-color:var(--navy);color:#fff}
.review-arrow:disabled{opacity:.4;cursor:default}
.review-position{font-size:.875rem;font-weight:600;color:var(--navy);font-variant-numeric:tabular-nums;text-align:center;margin:0;min-width:8em}
.review-track:focus-visible,.review-arrow:focus-visible,.review-full:focus-visible{outline:3px solid var(--orange);outline-offset:3px}

/* Footer — circular brand mark, a quiet brand row and three clear columns. */
.site-footer{background:#071f31;color:#bdcbd5;border-top:1px solid #30495c;font-size:1rem;line-height:1.7}
.footer-brandbar{display:flex;align-items:center;justify-content:space-between;gap:40px;padding-block:42px 34px;border-bottom:1px solid #30495c}
.footer-identity{display:flex;align-items:center;gap:28px;min-width:0}
.footer-logo{display:block;flex:0 0 128px;width:128px;height:128px;aspect-ratio:1;border-radius:50%;overflow:hidden;background:#fff}
.footer-logo img{display:block;width:100%;height:100%;object-fit:contain;border-radius:50%}
.footer-brand-copy{min-width:0;max-width:450px}
.footer-website{display:inline-block;font:700 1.375rem/1.4 'Manrope',sans-serif;letter-spacing:-.025em;color:#fff;margin-bottom:10px}
.footer-brand-copy p{font-size:1rem;line-height:1.7;margin:0}
.footer-social{display:flex;gap:10px;flex-wrap:wrap;flex-shrink:0}
.footer-social a{display:grid;place-items:center;width:44px;height:44px;border:1px solid #435867;border-radius:50%;color:#e4ebf0;transition:color .2s,border-color .2s,transform .2s}
.footer-social a:hover{transform:translateY(-2px);border-color:#ffad71}
.footer-social svg{width:19px;height:19px}
.footer-social .social-youtube svg path{fill:#071f31}
.footer-grid{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:clamp(32px,5vw,72px);padding-block:38px 42px;align-items:start}
.footer-grid>*{min-width:0}
.site-footer h2{font:700 1rem/1.5 'Manrope',sans-serif;letter-spacing:0;color:#fff;margin:0 0 20px}
.footer-links ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:22px;row-gap:2px;list-style:none;margin:0;padding:0}
.footer-links li{min-width:0}
.footer-links a{display:inline-flex;align-items:center;min-height:44px;padding:8px 0;font-size:.9375rem;line-height:1.5}
.footer-contact address{font-style:normal}
.footer-contact-group{margin-bottom:16px}
.footer-contact-group>span{display:block;font-size:.875rem;color:#98adbc;margin-bottom:4px}
.footer-contact-group>a{display:block;font-size:1rem;overflow-wrap:anywhere;line-height:1.6;padding:4px 0}
.footer-contact-group .footer-phone{font-size:1.2rem;font-weight:700;letter-spacing:-.01em;color:#fff}
.footer-chat{display:inline-flex;align-items:center;gap:16px;min-height:44px;color:#ffad71;font-weight:700;font-size:.9375rem;padding:8px 0;border-bottom:1px solid #ffad7166}
.footer-visit p{font-size:1rem;line-height:1.7;margin:0 0 18px}
.footer-map{display:block;width:100%;height:160px;border:0;background:#e2e7eb;border-radius:6px}
.footer-map-link{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px;font-size:.9375rem;font-weight:700;padding:12px 0;color:#fff}
.footer-map-link span{color:#ffad71}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 24px;border-top:1px solid #30495c;padding-block:22px 28px;font-size:.875rem;color:#a8bac8}
.footer-bottom p{margin:0}
.footer-bottom>div{display:flex;gap:12px 24px;flex-wrap:wrap}
.footer-credit>a{color:#cbd6dd}
.site-footer a:hover{color:#ffad71}
.site-footer a:focus-visible{outline:3px solid #ffad71;outline-offset:5px}
@media(max-width:1050px){.footer-brandbar{gap:26px}.footer-identity{gap:22px}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 48px}.footer-links{grid-column:1/-1;padding-bottom:26px;border-bottom:1px solid #30495c}.footer-links ul{grid-template-columns:repeat(4,minmax(0,1fr));gap:2px 24px}}
@media(max-width:760px){.footer-brandbar{align-items:flex-start;flex-direction:column;gap:22px}.footer-social{padding-left:150px}.footer-logo{flex-basis:128px;width:128px;height:128px}.footer-grid{gap:30px}.footer-links ul{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.footer-brandbar{align-items:center;padding-block:36px 30px;gap:22px}.footer-identity{flex-direction:column;gap:20px;text-align:center}.footer-logo{flex-basis:136px;width:136px;height:136px}.footer-brand-copy{max-width:340px}.footer-website{font-size:1.35rem}.footer-social{padding-left:0;justify-content:center}.footer-grid{grid-template-columns:minmax(0,1fr);gap:0;padding-block:28px 30px}.footer-links{grid-column:auto;padding-bottom:24px}.footer-links ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 24px}.footer-links a{font-size:1rem}.footer-contact{padding-block:28px;border-bottom:1px solid #30495c}.footer-contact-group>a{min-height:44px;display:flex;align-items:center}.footer-contact-group .footer-phone{font-size:1.3rem}.footer-visit{padding-top:28px}.footer-map{height:180px}.footer-bottom{align-items:flex-start;flex-direction:column;padding-block:22px 88px;gap:10px}.footer-bottom>div{flex-direction:column;gap:8px}.footer-bottom a{display:inline-block;padding-block:4px}}
@media(max-width:1150px){.video-testimonial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.video-testimonial-card:last-child{grid-column:1 / -1;max-width:480px;width:100%;justify-self:center}}
@media(max-width:960px){.testimonial-grid{gap:18px}.testimonial-card{padding:24px 20px}.testimonial-card figcaption{align-items:flex-start;flex-direction:column}.testimonial-source{align-items:flex-start}.video-all{justify-self:start}.video-testimonials{margin-top:48px;padding-top:40px}}
@media(max-width:760px){.testimonial-grid{grid-template-columns:1fr;gap:20px}.testimonial-card{padding:28px 24px}.testimonial-card figcaption{align-items:center;flex-direction:row}.testimonial-card blockquote p{font-size:1.75rem}.testimonial-source{flex-direction:column;gap:8px}.video-testimonial-grid{grid-template-columns:1fr;gap:24px}.video-testimonial-card,.video-testimonial-card:last-child{max-width:480px;width:100%;justify-self:center}.video-testimonial-card iframe{height:610px}}


/* Project inspiration gallery */
.project-gallery{background:#132f3b;color:#fff}
.project-gallery .gallery-heading{grid-template-columns:1.25fr .75fr;gap:80px;margin-bottom:50px;align-items:center}
.project-gallery .eyebrow{color:#ffad71}
.project-gallery h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(2.5rem,4.7vw,4.7rem);font-weight:400;line-height:1.12;letter-spacing:-.04em;margin:0}
.project-gallery h2 em{color:#e7dac1;font-weight:400}
.project-gallery .gallery-heading p:not(.eyebrow){color:#bfced3;font-size:1.0625rem;line-height:1.8}
.project-gallery .text-link{color:#f3dfc1;border-color:transparent;margin-top:22px;gap:22px}
.project-gallery .text-link span{color:#f3dfc1}
.project-gallery .text-link:hover{border-color:#f3dfc1}
.project-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px 26px}
.gallery-project{margin:0;min-width:0}
.gallery-open{display:block}
.gallery-image{display:block;position:relative;overflow:hidden;background:#0b2530;aspect-ratio:1.5}
.gallery-image>img{height:100%;width:100%;object-fit:cover;transition:transform .35s ease}
.gallery-expand{position:absolute;right:12px;top:12px;width:38px;height:38px;display:grid;place-items:center;background:rgba(9,41,69,.9);color:#fff}
.gallery-expand svg{width:22px;height:22px}
.gallery-title{font-family:Georgia,'Times New Roman',serif;font-size:clamp(1.2rem,1.7vw,1.55rem);line-height:1.35;color:#fff;display:flex;justify-content:space-between;align-items:baseline;gap:18px;padding-top:18px}
.gallery-title>span{font-family:'DM Sans',sans-serif;font-size:1.35rem;color:#d9bc94}
.gallery-project figcaption{color:#bdcbd0;font-size:.875rem;letter-spacing:.035em;padding-top:12px}
.project-gallery+.process{border-top:1px solid #37525f}
.project-lightbox{width:min(1280px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);margin:auto;padding:20px 22px;background:#0b202e;color:#fff;border:1px solid #405764;box-shadow:0 16px 80px #0007;overflow:auto}
.project-lightbox::backdrop{background:rgba(3,13,21,.88)}
.lightbox-toolbar{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:16px}
#lightbox-count{font-size:.875rem;color:#c8d7de}
.project-lightbox button{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;background:transparent;color:#fff;border:1px solid #63808f;cursor:pointer}
.lightbox-close{gap:16px;padding:6px 14px;font-size:.875rem}
.lightbox-close span{font-size:1.7rem;line-height:1}
.lightbox-stage{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:18px}
#lightbox-image{display:block;width:100%;height:min(68dvh,760px);object-fit:contain}
.lightbox-stage button{font-size:2rem;line-height:1}
.project-lightbox button:hover{background:#244657}
#lightbox-caption{text-align:center;margin:16px 62px 0;color:#e8eff2;font-size:1rem;line-height:1.5}
body.gallery-is-open{overflow:hidden}
@media(max-width:960px){.project-gallery .gallery-heading{grid-template-columns:1fr;gap:26px;margin-bottom:36px}.project-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 22px}.project-gallery .gallery-heading p:not(.eyebrow){max-width:610px}.project-gallery .text-link{margin-top:14px}}
@media(max-width:600px){.project-gallery-grid{grid-template-columns:1fr;gap:32px}.project-gallery h2{font-size:clamp(2.4rem,10vw,3.4rem)}.project-gallery .gallery-heading p:not(.eyebrow){font-size:1rem}.gallery-title{font-size:1.4rem}.gallery-expand{width:38px;height:38px}.project-lightbox{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);padding:12px}.lightbox-stage{grid-template-columns:44px minmax(0,1fr) 44px;gap:6px}#lightbox-image{height:60dvh}#lightbox-caption{margin:14px 0 0;font-size:.875rem}}

/* Why choose Pergola Design.in and featured project video */
.why-choose{background:#f6f3ed;border-top:1px solid #e5e0d7}
.why-intro{display:grid;grid-template-columns:1.05fr .95fr;gap:80px;align-items:center}
.why-intro h2{font-size:clamp(2.1rem,3.4vw,3.4rem);margin-bottom:24px}
.why-intro h3{font-size:clamp(1.15rem,1.65vw,1.45rem);line-height:1.5;letter-spacing:-.025em;margin-bottom:6px}
.why-promise{font-size:1.15rem;font-weight:700;color:#ac4700;margin:0}
.why-description{font-size:1.0625rem;color:#536674;line-height:1.9;margin:0}
.why-description p{margin:0 0 20px}.why-description p:last-child{margin-bottom:0}
.why-description strong{color:var(--navy)}
.why-trust-heading{font-size:1.125rem;line-height:1.6;letter-spacing:-.01em;margin:42px 0 26px}
.why-proof{display:grid;grid-template-columns:.7fr 2fr;gap:52px;align-items:start}
.why-stats{list-style:none;display:grid;gap:24px;margin:0;padding:0 34px 0 0;border-right:1px solid #d8d5cd}
.why-stats li{padding-bottom:12px}
.why-stats strong{display:block;font:800 clamp(2.8rem,4vw,3.8rem)/1.15 'Manrope',sans-serif;letter-spacing:-.05em;color:var(--navy)}
.why-stats span{display:block;font-size:1rem;line-height:1.6;color:#536674;margin-top:8px;max-width:210px}
.why-benefits{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 30px;padding:0;margin:0}
.why-benefits li{display:flex;gap:13px;align-items:flex-start;font-size:1rem;line-height:1.65;padding:15px 0 18px;border-bottom:1px solid #dcd9d1;color:var(--navy)}
.why-benefits li:before{content:'✓';color:#b64c03;font-weight:800;flex-shrink:0}
.project-film{background:var(--navy);color:#fff}
.film-wrap{max-width:1150px}
.film-heading{text-align:center;max-width:100%;margin:0 auto 46px}
.film-heading h2{font-size:clamp(2rem,3.7vw,3.15rem);line-height:1.2;letter-spacing:-.045em;margin-bottom:24px;color:#fff}
.film-heading h2 em{display:inline;font-family:Georgia,'Times New Roman',serif;font-size:1.08em;font-weight:600;line-height:1.16;color:#ffad71}
@media(min-width:761px){.film-heading h2{white-space:nowrap}}
.film-heading p{font-size:1.0625rem;line-height:1.8;color:#d1dfe9;max-width:920px;margin:0 auto}
.film-heading .film-watch{margin-top:24px;border-radius:4px;font-size:1rem;gap:12px;max-width:100%}
.film-frame{aspect-ratio:16/9;padding:8px;background:#123b5d;border:1px solid #44657e;box-shadow:0 22px 52px #00101f66}
.film-frame iframe{display:block;width:100%;height:100%;border:0;background:#071f31}
.film-caption{display:flex;align-items:center;justify-content:space-between;gap:26px;margin-top:26px}
.film-caption p{font-size:.8125rem;font-weight:800;letter-spacing:.09em;color:#d1dfe9;margin:0;line-height:1.6}
.film-caption p span{padding:0 3px}
.film-original{display:inline-block;font-size:.875rem;color:#fff;padding:6px 0;text-underline-offset:4px}
.film-original:hover{text-decoration:underline;color:#ffad71}
.film-cta{border-bottom:2px solid var(--orange);font-size:.875rem;letter-spacing:.035em;text-transform:uppercase;white-space:nowrap;padding-block:10px}
.project-film .film-cta{color:#fff}.project-film .film-cta:hover{color:#ffad71}
@media(max-width:960px){.why-intro{gap:36px}.why-proof{grid-template-columns:.65fr 1.8fr;gap:30px}.why-stats{padding-right:24px}.why-benefits{gap:0 24px}.why-description{font-size:1rem}.film-heading{margin-bottom:32px}}
@media(max-width:760px){.why-intro{grid-template-columns:1fr;gap:24px}.why-intro h2{margin-bottom:20px}.why-proof{grid-template-columns:1fr;gap:22px}.why-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;padding:0 0 22px;border-right:0;border-bottom:1px solid #d8d5cd}.why-stats li{padding:0}.why-stats strong{font-size:clamp(2.5rem,8vw,3.3rem)}.why-stats span{font-size:.9375rem;max-width:200px}.why-trust-heading{margin-top:32px}.film-heading h2{font-size:clamp(1.75rem,5vw,2.4rem)}.film-heading p{font-size:1rem}.film-frame{padding:5px}.film-caption{align-items:flex-start;gap:18px}.film-caption p{font-size:.75rem;letter-spacing:.05em}.film-cta{font-size:.8125rem;gap:10px}}
@media(max-width:520px){.why-benefits{grid-template-columns:1fr}.why-benefits li{padding-block:14px}.film-caption{flex-direction:column;gap:10px}.film-cta{font-size:.875rem}.film-frame{padding:3px}}

/* Vision, team and company comparison */
.vision-team{background:#fff}
.vision-team-grid{display:grid;grid-template-columns:.9fr 1.3fr;gap:42px;align-items:stretch}
.vision-panel{background:var(--navy);color:#fff;padding:40px 34px;border-top:4px solid var(--orange)}
.vision-panel .eyebrow{color:#ffad71;font-size:.75rem;letter-spacing:.1em}
.vision-panel h2{font-size:clamp(2rem,3vw,3rem);margin-bottom:28px}
.vision-values{list-style:none;margin:0;padding:0}
.vision-values li{display:flex;gap:18px;align-items:flex-start;padding:18px 0;border-top:1px solid #38556e;font-size:1.125rem;line-height:1.6}
.vision-values svg,.vision-currency{display:block;flex:0 0 28px;width:28px;height:28px;margin-top:2px;color:#ffad71}
.vision-currency{font-size:1.65rem;line-height:1.05;text-align:center;font-weight:500}
.team-panel{min-width:0}.team-panel h2{font-size:clamp(2rem,3vw,3rem);margin-bottom:26px}.team-panel .eyebrow{margin-bottom:14px}
.team-panel>img{width:100%;height:auto;border:1px solid #e5e1db}
.team-carousel{min-width:0;border:1px solid #dce2e6;background:#fff;border-radius:6px;overflow:hidden}
.team-carousel-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;direction:ltr}
.team-carousel-track::-webkit-scrollbar{display:none}
.team-carousel-track:focus-visible{outline:3px solid var(--orange);outline-offset:-3px}
.team-carousel-slide{position:relative;flex:0 0 100%;min-width:0;aspect-ratio:1538 / 1023;scroll-snap-align:start;scroll-snap-stop:always;background:#092945}
.team-carousel-slide img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.team-carousel-controls{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:10px 14px;border-top:1px solid #dce2e6;background:#faf8f4}
.team-carousel-controls[hidden]{display:none}
.team-carousel-arrow{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border:1px solid #c4ced6;border-radius:50%;background:#fff;color:var(--navy);cursor:pointer;transition:background-color 180ms ease,border-color 180ms ease}
.team-carousel-arrow svg{width:22px;height:22px}
.team-carousel-arrow:hover{background:#fff0e5;border-color:var(--orange)}
.team-carousel-arrow:focus-visible{outline:3px solid var(--orange);outline-offset:2px}
.team-carousel-count{margin:0;font-size:.875rem;font-weight:700;letter-spacing:.06em;color:var(--navy);font-variant-numeric:tabular-nums}
@media(prefers-reduced-motion:reduce){.team-carousel-arrow{transition:none}}
.team-caption{font-size:.875rem;line-height:1.8;color:#62717c;padding-top:18px;margin:0}
.company-comparison{background:#f6f3ed;border-top:1px solid #dedbd4}
@media(max-width:760px){.company-comparison{display:none}}
.company-comparison-heading{text-align:center;max-width:880px;margin:0 auto 38px}
.company-comparison-heading h2{font-size:clamp(2rem,3.2vw,3.2rem);line-height:1.22;margin:0}
.company-comparison-heading h2 span{font:italic 400 .75em Georgia,serif;color:#ac4700;padding-inline:8px}
.comparison-infographic{display:block;background:#080a0b;border:1px solid #283f4e}
.comparison-infographic img{width:100%;height:auto}
.company-comparison-details{margin-top:24px;border-top:1px solid #cdd3d6;border-bottom:1px solid #cdd3d6}
.company-comparison-details>summary{cursor:pointer;padding:18px 0;font-size:1rem;font-weight:700;color:var(--navy);list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px}
.company-comparison-details>summary::-webkit-details-marker{display:none}
.company-comparison-details>summary:after{content:'+';font-size:1.6rem;font-weight:400;color:#ac4700;line-height:1}
.company-comparison-details[open]>summary:after{content:'−'}
.company-comparison-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;padding:6px 0 28px}
.company-comparison-columns article{min-width:0;padding:28px;border:1px solid #dce2e6;background:#fff}
.company-comparison-columns .comparison-brand{background:var(--navy);color:#fff;border-top:4px solid var(--orange)}
.company-comparison-columns h3{font-size:1.5rem;line-height:1.35;margin:0 0 24px}
.company-comparison-columns ul{list-style:none;margin:0;padding:0}
.company-comparison-columns li{padding:18px 0;border-top:1px solid #dce2e6}
.company-comparison-columns h4{font:700 1rem/1.6 'DM Sans',sans-serif;margin:0 0 7px;overflow-wrap:anywhere}
.company-comparison-columns p{font-size:.9375rem;line-height:1.7;color:#62717c;margin:0}
.comparison-brand li{border-color:#38556e}.comparison-brand h3{color:#ffad71}.comparison-brand p{color:#d0dce6}
.comparison-original-link{display:inline-block;padding:18px 0 0;color:var(--navy);font-size:.9375rem;font-weight:700;text-underline-offset:4px}
.comparison-original-link span{color:#b44d03;margin-left:10px}.comparison-original-link:hover{text-decoration:underline}
@media(max-width:960px){.vision-team-grid{gap:28px;grid-template-columns:.95fr 1.2fr}.vision-panel{padding:30px 24px}.vision-values li{font-size:1rem;gap:14px}.vision-panel .eyebrow{font-size:.75rem}.company-comparison-columns article{padding:24px}}
@media(max-width:760px){.vision-team-grid{grid-template-columns:1fr;gap:36px}.vision-panel{padding:30px 26px}.vision-values li{font-size:1.0625rem}.team-panel h2{margin-bottom:20px}.company-comparison-heading{text-align:left;margin-bottom:26px}.company-comparison-heading h2 br{display:none}.company-comparison-heading h2 span{display:block;padding:6px 0}.company-comparison-columns{grid-template-columns:1fr;gap:20px}.comparison-infographic{display:none}.company-comparison-details{margin-top:0}.company-comparison-columns article{padding:24px}.company-comparison-columns h3{font-size:1.4rem}.company-comparison-columns p{font-size:1rem}.comparison-original-link{font-size:1rem}}

/* Keep the review tracks horizontal at every breakpoint. */
.review-track.testimonial-grid,.review-track.video-testimonial-grid{--review-gap:24px;--review-columns:3;display:flex;gap:var(--review-gap);overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#8a9daa #edf0f2;padding:4px 0 12px;scroll-padding-inline:0}
.review-track>.testimonial-card,.review-track>.video-testimonial-card{flex:0 0 calc((100% - (var(--review-columns) - 1)*var(--review-gap))/var(--review-columns));width:auto;max-width:none;min-width:0;scroll-snap-align:start;box-sizing:border-box}
.review-track .testimonial-card figcaption{align-items:center;flex-direction:row}
@media(max-width:1150px){.review-track.testimonial-grid,.review-track.video-testimonial-grid{--review-columns:2}}
@media(max-width:760px){.review-track.testimonial-grid,.review-track.video-testimonial-grid{--review-columns:1;--review-gap:18px}.review-navigation{align-items:flex-start;flex-direction:column}.review-controls{width:100%;gap:8px}.review-arrow{padding:10px 12px;gap:8px}.review-position{min-width:7em;font-size:.8125rem}.testimonial-card .testimonial-detail{font-size:1.0625rem}.review-track>.video-testimonial-card:last-child{width:auto;max-width:none}}

/* Shared desktop/mobile motion. Touch presses mirror hover without blocking controls. */
:root{--motion-ease:cubic-bezier(.22,1,.36,1);--motion-fast:160ms;--motion-medium:240ms}
.button,.header-cta,.footer-chat,.review-arrow,.project-lightbox button,.floating-whatsapp{transition:background-color var(--motion-fast) ease,color var(--motion-fast) ease,border-color var(--motion-fast) ease,box-shadow var(--motion-medium) ease,transform var(--motion-medium) var(--motion-ease)}
.text-link,.review-full,.footer-map-link,.footer-links a,.footer-contact a,.footer-website{transition:color var(--motion-fast) ease,border-color var(--motion-fast) ease}
.button>span,.text-link>span,.footer-chat>span,.footer-map-link>span,.gallery-title>span{display:inline-block;transition:transform var(--motion-medium) var(--motion-ease)}
.service-card{transition:transform var(--motion-medium) var(--motion-ease),box-shadow var(--motion-medium) ease,border-color var(--motion-medium) ease}
.testimonial-card,.commercial-logos>li{transition:border-color var(--motion-medium) ease,background-color var(--motion-medium) ease}
.gallery-image>img{transition:transform 520ms var(--motion-ease)}
.gallery-expand{transition:background-color var(--motion-fast) ease,color var(--motion-fast) ease}
.menu-button span{transition:transform 220ms var(--motion-ease),opacity 160ms ease}
.menu-open .menu-button span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-open .menu-button span:nth-child(2){opacity:0}
.menu-open .menu-button span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.faq summary{transition:color var(--motion-fast) ease}
.faq summary:hover,.faq summary:focus-visible{color:#ac4700}
.faq details[open]>p{animation:detail-enter 200ms var(--motion-ease)}
.project-lightbox[open]{animation:panel-enter 220ms var(--motion-ease)}
.project-lightbox[open]::backdrop{animation:backdrop-enter 220ms ease}
@keyframes detail-enter{from{opacity:.65;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}
@keyframes panel-enter{from{opacity:.4;transform:translateY(8px) scale(.99)}to{opacity:1;transform:none}}
@keyframes backdrop-enter{from{opacity:0}to{opacity:1}}
@media(min-width:1281px){
  .site-header nav a:after{content:'';position:absolute;inset:auto 0 0;height:3px;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:transform 260ms var(--motion-ease)}
  .site-header nav a.active:after,.site-header nav a:hover:after,.site-header nav a:focus-visible:after{transform:scaleX(1)}
}
@media(max-width:1280px){.site-header.menu-open nav{animation:detail-enter 180ms var(--motion-ease)}}
@media(hover:hover) and (pointer:fine){
  .button:hover,.header-cta:hover,.footer-chat:hover,.floating-whatsapp:hover{transform:translateY(-1px);box-shadow:0 6px 16px #09294524}
  .button:hover>span,.text-link:hover>span,.footer-chat:hover>span,.footer-map-link:hover>span{transform:translate(2px,-1px)}
  .service-card:hover{transform:translateY(-2px);border-color:#ccad97;box-shadow:0 12px 28px #0929450d}
  .testimonial-card:hover,.commercial-logos>li:hover{border-color:#c89a78}
  .testimonial-card:hover{border-top-color:var(--orange)}
  .gallery-open:hover .gallery-image>img{transform:scale(1.025)}
  .gallery-open:hover .gallery-expand{background:#ffad71;color:#fff}
  .gallery-open:hover .gallery-title>span{transform:translate(3px,-3px)}
}
@media(hover:none), (pointer:coarse){
  .button.is-touch-active,.header-cta.is-touch-active,.footer-chat.is-touch-active,.floating-whatsapp.is-touch-active{transform:translateY(-1px);box-shadow:0 6px 16px #09294524}
  .button.is-touch-active>span,.text-link.is-touch-active>span,.footer-chat.is-touch-active>span,.footer-map-link.is-touch-active>span{transform:translate(2px,-1px)}
  .service-card.is-touch-active{transform:translateY(-2px);border-color:#ccad97;box-shadow:0 12px 28px #0929450d}
  .testimonial-card.is-touch-active,.commercial-logos>li.is-touch-active{border-color:#c89a78}
  .testimonial-card.is-touch-active{border-top-color:var(--orange)}
  .gallery-open.is-touch-active .gallery-image>img{transform:scale(1.025)}
  .gallery-open.is-touch-active .gallery-expand{background:#ffad71;color:#fff}
  .gallery-open.is-touch-active .gallery-title>span{transform:translate(3px,-3px)}
}
/* Enquiry cues respond to the visitor; no automatic pulsing or delayed clicks. */
@media(hover:hover) and (pointer:fine){
  .button.primary:hover,.header-cta:hover{box-shadow:0 0 0 4px #f4792026,0 6px 16px #09294524}
  .floating-whatsapp:hover{background:#106638;box-shadow:0 0 0 4px #157b4326,0 6px 16px #09294524}
  .comparison:hover .compare-line b{background:#fff4ea;box-shadow:0 0 0 5px #f4792038,0 2px 15px #0002}
}
@media(hover:none), (pointer:coarse){
  .button.primary.is-touch-active,.header-cta.is-touch-active{box-shadow:0 0 0 4px #f4792026,0 6px 16px #09294524}
  .floating-whatsapp.is-touch-active{background:#106638;box-shadow:0 0 0 4px #157b4326,0 6px 16px #09294524}
  .comparison.is-touch-active .compare-line b{background:#fff4ea;box-shadow:0 0 0 5px #f4792038,0 2px 15px #0002}
}
.button.primary:focus-visible,.header-cta:focus-visible{box-shadow:0 0 0 4px #f4792026}
.compare-line b{transition:background-color var(--motion-fast) ease,box-shadow var(--motion-fast) ease}
.comparison:focus-within .compare-line b{background:#fff4ea;box-shadow:0 0 0 5px #f4792038,0 2px 15px #0002}
.button:active,.header-cta:active,.footer-chat:active,.floating-whatsapp:active,.review-arrow:not(:disabled):active{transform:translateY(1px)}
.button.primary:active{background:#e56b12;box-shadow:0 0 0 3px #f4792026}
.header-cta:active{background:var(--navy-2)}
.floating-whatsapp:active{background:#106638}

.text-link:focus-visible>span,.button:focus-visible>span{transform:translate(2px,-1px)}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  .button,.header-cta,.footer-chat,.floating-whatsapp,.review-arrow,.service-card,.process-grid>li,.footer-social a,.gallery-image>img,.gallery-title>span,.button>span,.text-link>span,.footer-chat>span,.footer-map-link>span{transform:none!important}
}
@media print{*,*::before,*::after{animation:none!important;transition:none!important}}

/* Architectural image reveals and layered gallery crossfades. */
.service-photo{overflow:hidden;flex-shrink:0}
.heading-rule{display:block;width:54px;height:2px;background:var(--orange);margin-top:18px;transform-origin:left;pointer-events:none}
.company-comparison-heading h2 .heading-rule,.film-heading h2 .heading-rule{margin-inline:auto;padding:0}
.lightbox-media{position:relative;min-width:0;isolation:isolate;overflow:hidden}
.lightbox-media .lightbox-outgoing{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none}
.lightbox-toolbar #lightbox-count{min-width:0;line-height:1.5}
.text-link{background-image:linear-gradient(var(--orange),var(--orange));background-position:left bottom;background-repeat:no-repeat;background-size:0 2px;transition:background-size 260ms var(--motion-ease),color var(--motion-fast) ease,border-color var(--motion-fast) ease}
.text-link:hover,.text-link:focus-visible{background-size:100% 2px}
@media(hover:none), (pointer:coarse){
  .text-link.is-touch-active{background-size:100% 2px;color:#b44d03;border-color:var(--orange)}
  .pd-footer .pd-footer-social a.is-touch-active{transform:translateY(-2px);border-color:#ffad71}
  .pd-footer .pd-footer-areas-link.is-touch-active{color:#fff;border-color:#ffad71}
  .pd-footer a.is-touch-active{color:#ffad71}
  .review-arrow.is-touch-active:not(:disabled){background:var(--navy);border-color:var(--navy);color:#fff}
  .design-gallery .review-arrow.is-touch-active:not(:disabled){background:var(--orange);border-color:var(--orange);color:#fff;transform:scale(1.06)}
  .video-load.is-touch-active .video-play{background:#ffa564;transform:scale(1.04);color:#fff}
  .video-facade .video-load.is-touch-active .video-play{transform:translate(-50%,-50%) scale(1.05)}
}
@media(prefers-reduced-motion:reduce){.video-load.is-touch-active .video-play{transform:none}.video-facade .video-load.is-touch-active .video-play{transform:translate(-50%,-50%)}}
@media(max-width:760px){
  .heading-rule{width:44px;margin-top:15px}
  .company-comparison-heading h2 .heading-rule{margin-inline:0;padding:0}
}

/* Search-ready homepage: natural headings, useful links and touch-friendly contact. */

.roofing-links{list-style:none;padding:0;margin:0 0 22px;display:grid;gap:7px;font-size:.875rem;line-height:1.5}
.roofing-links a{display:inline-block;padding:4px 0;text-decoration:underline;text-underline-offset:4px;text-decoration-color:#bcc8d1}
.roofing-links a:hover{text-decoration-color:var(--orange)}
.visit-details{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding-top:32px;line-height:1.75}
.visit-details h3{font-size:1.35rem}.visit-details address{font-style:normal;margin-bottom:14px}
.visit-details p{color:var(--muted);margin-bottom:14px}.visit-details strong{color:var(--navy)}
.video-facade{position:relative;overflow:hidden;background:linear-gradient(135deg,#092945,#173f60);color:white;width:100%;isolation:isolate}
.video-landscape{aspect-ratio:16/9}.video-portrait{height:520px}
.video-load{position:absolute;inset:0;display:flex;flex-direction:column;gap:18px;align-items:center;justify-content:center;width:100%;height:100%;padding:24px;border:0;background:transparent;color:inherit;cursor:pointer;text-align:center}
.video-load strong{font:700 clamp(1.1rem,2vw,1.7rem)/1.4 'Manrope',sans-serif;max-width:28ch}
.video-load>span:last-child{font-size:.875rem;color:#dae6ee}
.video-play{display:grid;place-items:center;width:68px;height:68px;border-radius:50%;background:var(--orange);color:#fff;font-size:24px;padding-left:4px;transition:background .2s,transform .2s}
.video-load:hover .video-play{background:#ffa564;transform:scale(1.04);color:#fff}
.video-facade iframe{position:absolute!important;inset:0;width:100%!important;height:100%!important;border:0}
.video-facade .video-native{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#071f31;z-index:2}
.video-native:focus-visible{outline:3px solid var(--orange);outline-offset:-3px}
.video-inline-watch{width:100%;border:0;border-top:1px solid var(--line);background:#fff;text-align:left;cursor:pointer;font:inherit}
.video-inline-watch:hover,.video-inline-watch:focus-visible{color:#ac4700}
.video-retry{position:absolute;z-index:3;left:20px;right:20px;top:40%;padding:16px;border:1px solid var(--orange);border-radius:4px;background:var(--navy);color:#fff;cursor:pointer;font:inherit}
.video-thumbnail{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.video-landscape .video-thumbnail{object-fit:contain}
.video-facade .video-load{z-index:1;background:linear-gradient(180deg,transparent 40%,rgba(5,24,40,.12) 58%,rgba(5,24,40,.9));justify-content:flex-end;padding-bottom:30px}
.video-facade .video-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 4px 24px #0004;border:2px solid #ffffffad}
.video-facade .video-load:hover .video-play{transform:translate(-50%,-50%) scale(1.05)}
.video-facade .video-load strong{font-size:clamp(1rem,2vw,1.7rem)}
.video-facade .video-load:focus-visible{outline:4px solid #fff;outline-offset:-6px}
.video-facade.video-portrait{height:auto;aspect-ratio:9/16}
.video-portrait .video-load{padding-bottom:22px}
.video-portrait .video-load strong{display:none}
.video-loaded .video-thumbnail{display:none}
@media(max-width:600px){.video-facade.video-landscape .video-load{padding-bottom:16px;gap:4px}.video-landscape .video-load strong{display:none}.video-facade .video-play{width:58px;height:58px}}
@media(prefers-reduced-motion:reduce){.video-facade .video-load:hover .video-play{transform:translate(-50%,-50%)}}
.video-fallback{position:absolute;inset:auto 0 14px;display:block;text-align:center;text-decoration:underline;font-size:1rem;z-index:1}
.mobile-contact-bar{display:none}
@media(max-width:760px){

 .visit-details{grid-template-columns:1fr;gap:20px}
 .video-load{padding:14px;gap:10px}.video-play{width:48px;height:48px;font-size:20px;flex-shrink:0}
 .video-portrait{height:440px}
 body{padding-bottom:calc(70px + env(safe-area-inset-bottom,0px))}
 .floating-whatsapp{display:none}
 .mobile-contact-bar{display:grid;grid-template-columns:1fr 1fr 1.2fr;position:fixed;bottom:0;left:0;right:0;z-index:40;background:var(--navy);color:#fff;padding:8px 10px calc(8px + env(safe-area-inset-bottom,0px));gap:8px;box-shadow:0 -3px 18px #09294522}
 .mobile-contact-bar a{display:flex;gap:8px;justify-content:center;align-items:center;min-height:50px;padding:8px 4px;font-size:.875rem;font-weight:700;border-radius:4px}
 .mobile-contact-bar svg{width:20px;height:20px;flex-shrink:0}.mobile-contact-bar .mobile-quote{background:var(--orange);color:#fff}
 .mobile-contact-bar a:focus-visible{outline-color:#fff;outline-offset:0}
 .gallery-is-open .mobile-contact-bar{visibility:hidden}
 html{scroll-padding-bottom:90px}
 .site-header.menu-open nav{max-height:calc(100dvh - 150px - env(safe-area-inset-bottom,0px))}
}
@media(max-width:380px){.video-load{gap:6px;padding:10px}.video-play{width:40px;height:40px}.video-load strong{font-size:1rem}}
@media(prefers-reduced-motion:reduce){.video-play{transition:none!important}.video-load:hover .video-play{transform:none}}
@media print{.mobile-contact-bar{display:none!important}body{padding-bottom:0}}

/* Separate introduction, business counters, reasons and craftsmanship. */
.company-introduction{position:relative;isolation:isolate;background:#faf8f3;border-bottom:1px solid #e2ded7}
.company-introduction::before{content:"";position:absolute;inset:0 0 0 38%;background:url('../images/pergola-architectural-background.webp') center right/cover no-repeat;filter:grayscale(1) invert(1);mix-blend-mode:multiply;opacity:.085;mask-image:linear-gradient(90deg,transparent,#000);pointer-events:none;z-index:-1}
.introduction-layout{position:relative}
.introduction-topline{display:flex;align-items:center;gap:26px;margin-bottom:34px}
.introduction-topline .eyebrow{margin:0;font-size:.8125rem;line-height:1.7;letter-spacing:.17em;color:#b64b04}
.introduction-topline>span{height:1px;background:#f4792070;flex:1;min-width:32px}
.introduction-grid{display:grid;grid-template-columns:.96fr 1.04fr;gap:clamp(30px,4.2vw,64px);align-items:start}
.introduction-heading,.introduction-copy{min-width:0}
.introduction-heading{position:relative;isolation:isolate}
.introduction-heading::before{content:"";position:absolute;inset:-28px -20px -24px;z-index:-1;pointer-events:none;background:url('../images/pergola-architectural-background.webp') center right/cover no-repeat;filter:grayscale(1) invert(1);mix-blend-mode:multiply;opacity:.1;mask-image:linear-gradient(180deg,transparent,rgba(0,0,0,.75) 18%,#000 75%,transparent)}
.introduction-heading h2{font-size:clamp(2.625rem,4.25vw,4.25rem);font-weight:800;line-height:1.08;letter-spacing:-.055em;margin:0}
.introduction-heading h2>span{display:block}
.introduction-heading>.heading-rule{width:56px;margin:24px 0 20px}
.introduction-promise{font-size:clamp(1.375rem,2.05vw,1.85rem);font-weight:700;color:#b64b04;line-height:1.35;margin:0 0 14px;letter-spacing:-.025em}
.introduction-tagline{font-size:.8125rem;font-weight:600;line-height:1.9;letter-spacing:.16em;text-transform:uppercase;color:#3b5670;max-width:49ch;margin:0}
.introduction-copy{border-left:1px solid #dcdedb;padding-left:clamp(26px,3.4vw,48px);color:#233f53}
.introduction-copy p{font-size:1.125rem;line-height:1.8;margin-bottom:22px}
.introduction-copy strong{font-weight:700;color:#092945}
.introduction-copy .introduction-link{font-size:1.0625rem;color:#a84300;border-bottom:2px solid #ed7425;margin-top:2px}
.introduction-stages{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding:0;margin:38px 0 0}
.introduction-stages>li{display:grid;grid-template-columns:52px minmax(0,1fr);gap:18px;align-items:center;padding:22px 20px;background:#fffaf2a6;border:1px solid #dcdedb;min-width:0}
.introduction-stage-symbol{align-self:stretch;display:flex;flex-direction:column;justify-content:space-between;gap:14px;color:#092945}
.introduction-stage-symbol>span{color:#b64b04;font-size:1rem;font-weight:700;line-height:1}
.introduction-stage-symbol svg{width:42px;height:42px;display:block}
.introduction-stage-copy{border-left:1px solid #dcdedb;padding-left:18px;min-width:0}
.introduction-stages h3{font-size:1.125rem;line-height:1.4;text-transform:uppercase;letter-spacing:.025em;margin:0 0 6px}
.introduction-stages p{font-size:1.0625rem;line-height:1.6;color:#3b5264;margin:0}
.company-numbers{background:#092945;color:#fff;position:relative;border-bottom:4px solid #f47920}
.company-numbers::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,41,69,.92),rgba(9,41,69,.34)),url('../images/pergola-architectural-background.webp') center right/cover no-repeat;pointer-events:none}
.company-numbers>.wrap{position:relative}
.numbers-heading{margin-bottom:48px}
.numbers-heading .numbers-intro{font-size:clamp(1.125rem,2vw,1.625rem);font-weight:700;line-height:1.6;color:#fff;margin:0 0 16px}
.numbers-intro em{color:#c7d7e3;font-style:italic}
.numbers-heading h2{font-size:clamp(2.5rem,5.4vw,4.75rem);font-weight:800;letter-spacing:-.045em;color:#ffad71;margin:0;line-height:1.12}
.numbers-heading .heading-rule{width:100px;height:3px;background:var(--orange);margin-top:24px}
.numbers-layout{display:grid;grid-template-columns:.82fr 1.6fr;gap:clamp(38px,7vw,100px)}
.experience-number{position:relative;border-left:2px solid #f47920;padding:12px 0 16px 30px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0}
.metric-kicker{font-size:.875rem;letter-spacing:.1em;font-weight:600;color:#bcd0df;line-height:1.5}
.metric-value{font-family:'Manrope',sans-serif;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.05em;line-height:1.2;white-space:nowrap;margin:0}
.counter-readable{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.experience-number .metric-value{font-size:clamp(5.5rem,8.4vw,8rem);margin:18px 0 8px;color:#fff}
.metric-plus{color:#ff984b;font-weight:500;font-size:.65em;margin-left:3px;vertical-align:baseline}
.experience-number h3{font-size:1.1rem;font-weight:600;line-height:1.5;max-width:19ch;margin:0}
.experience-number-rule{width:44px;height:2px;background:#476680;margin:24px 0 18px}
.metric-note{font-size:1rem;line-height:1.6;color:#adc3d4;max-width:24ch;margin:0}
.numbers-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px 42px;padding:0;margin:0;align-content:center}
.metric-item{min-width:0;padding:22px 24px;background:rgba(9,34,55,.82);border:1px solid #66819b80;border-top:2px solid #f47920;border-radius:4px}
.metric-item dt{display:flex;align-items:center;gap:12px;font-size:1rem;line-height:1.5;color:#ccdce8;margin-bottom:18px}
.metric-icon{display:grid;place-items:center;width:32px;height:32px;flex-shrink:0;color:#ffa465}
.metric-icon svg{width:26px;height:26px}
.metric-item .metric-value{font-size:clamp(2.4rem,3.5vw,3.55rem)}
.metric-area .metric-value{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 6px;white-space:normal}
.metric-area-amount{font-size:.8em;white-space:nowrap}
.metric-area-unit{font-size:max(.875rem,.42em);letter-spacing:-.02em;white-space:nowrap}
.metric-area-unit .metric-plus{font-size:1em}
.why-choose-separated{background:#f6f3ed;border:0}
.reasons-heading{display:grid;gap:18px;margin-bottom:36px}
.reasons-heading h2{font-size:clamp(2rem,3.5vw,3.35rem);line-height:1.2;margin-bottom:0}.reasons-heading .heading-rule{margin-top:20px}
.reasons-heading>p{margin-bottom:0;color:#435969;max-width:84ch;font-size:1.125rem;line-height:1.75}
.reasons-body{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.18fr);gap:28px;align-items:start}
/* Original photographs, full framing and captions outside the image. */
.reasons-documentation{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;min-width:0}
.reasons-documentation figure{display:flex;flex-direction:column;min-width:0;margin:0;overflow:hidden;background:#fff;border:1px solid #dce1e4;border-radius:6px;box-shadow:0 6px 22px #09294508}
.reasons-documentation img{display:block;width:100%;height:auto;object-fit:contain;flex:none}
.reasons-documentation figcaption{padding:17px 20px 19px}
.documentation-label{display:block;color:#954005;font-size:.75rem;font-weight:700;line-height:1.65;letter-spacing:.065em;margin-bottom:5px}
.reasons-documentation figcaption p{font-size:1rem;font-weight:500;line-height:1.6;color:#233f53;margin:0}
.reasons-project-photo figcaption{background:#092945;border-top:3px solid #f47920;padding:18px 22px 20px}
.reasons-project-photo .documentation-label{color:#ffad71}
.reasons-project-photo figcaption p{font-size:1.125rem;color:#fff}
.reasons-work-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;min-width:0}
.reasons-work-photo figcaption{padding:15px 16px 17px}
.reasons-actions{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-top:28px;margin-top:32px;border-top:1px solid #d5dde2}
.reasons-actions .text-link,.reasons-actions .button{font-size:1rem}
.reasons-grid{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:0;margin:0;min-width:0}
.reasons-grid>li{position:relative;display:grid;grid-template-columns:38px minmax(0,1fr);align-items:start;gap:12px;padding:22px 18px;background:#fff;border:1px solid #dce1e4;border-bottom:2px solid #d9e1e6;border-radius:6px;min-width:0;box-shadow:0 5px 18px #09294505}
.reason-number{display:none}
.reason-icon{display:grid;place-items:center;width:38px;height:38px;background:#fff3e9;border:1px solid #f9d1b2;border-radius:50%;color:#ad4900}
.reason-icon svg{width:22px;height:22px}.reasons-grid h3{font-size:1.125rem;line-height:1.45;letter-spacing:-.025em;margin:0 0 8px}
.reasons-grid p{font-size:1.0625rem;line-height:1.65;color:#435969;margin:0;max-width:43ch}
/* Each reason card takes the navy treatment only while hovered. */
.reasons-grid>li{transition:background-color var(--motion-medium) ease,border-color var(--motion-medium) ease,color var(--motion-medium) ease}
.reasons-grid h3,.reasons-grid p{transition:color var(--motion-medium) ease}
.reasons-grid .reason-icon{transition:color var(--motion-medium) ease,background-color var(--motion-medium) ease,border-color var(--motion-medium) ease}
@media(hover:hover) and (pointer:fine){
 .reasons-grid>li:hover{background:var(--navy);border-color:var(--navy);border-bottom-color:var(--orange);color:#fff}
 .reasons-grid>li:hover h3{color:#fff}
 .reasons-grid>li:hover p{color:#d1dfe9}
 .reasons-grid>li:hover .reason-icon{color:#ffad71;background:#173e5c;border-color:#56708a}
}
@media(hover:none), (pointer:coarse){
 .reasons-grid>li.is-touch-active{background:var(--navy);border-color:var(--navy);border-bottom-color:var(--orange);color:#fff}
 .reasons-grid>li.is-touch-active h3{color:#fff}
 .reasons-grid>li.is-touch-active p{color:#d1dfe9}
 .reasons-grid>li.is-touch-active .reason-icon{color:#ffad71;background:#173e5c;border-color:#56708a}
}
@media(max-width:1200px){.reasons-body{grid-template-columns:1fr;gap:32px}.reasons-documentation{grid-template-columns:minmax(0,2.65fr) minmax(0,1fr);gap:20px;align-items:start}.reasons-work-photos{grid-template-columns:1fr;gap:20px}.reasons-grid>li{padding:24px;gap:16px}.reasons-grid p{font-size:1.125rem}.introduction-stages{grid-template-columns:repeat(2,minmax(0,1fr))}}
.craftsmanship-story{position:relative;isolation:isolate;overflow:hidden;background:#f6f3ed;padding-block:90px}
.craftsmanship-story .about-grid{width:min(100% - 64px,1296px);grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,4.5vw,64px);align-items:center}
.craftsmanship-story .about-image{isolation:isolate}
.craftsmanship-story .about-image::before{content:"";position:absolute;inset:-72px -32px -32px;z-index:-1;background:url('../images/pergola-architectural-background.webp') center right/cover no-repeat;filter:grayscale(1) invert(1);mix-blend-mode:multiply;opacity:.22;pointer-events:none;mask-image:linear-gradient(90deg,#000 78%,transparent)}
/* Photo slider on the left; all design copy stays together on the right. */
.craftsmanship-story .design-gallery{align-self:center;justify-self:center;width:100%;min-width:0;min-height:0;aspect-ratio:1/1}
.design-photo-track{position:absolute;inset:0;display:flex;gap:0;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;background:var(--navy);box-shadow:0 20px 48px #09294526}
.design-photo-track::-webkit-scrollbar{display:none}
.design-photo-slide{position:relative;flex:0 0 100%;min-width:0;height:100%;margin:0;scroll-snap-align:start;scroll-snap-stop:always}
.craftsmanship-story .design-photo-slide img{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center top}
.design-gallery .review-navigation{position:absolute;inset:0;z-index:2;display:block;margin:0;pointer-events:none}
.design-gallery .review-navigation[hidden]{display:none}
.design-gallery .review-hint{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.design-gallery .review-controls{display:grid;grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;width:100%;height:100%;gap:12px;padding:20px}
.design-gallery .review-arrow{width:48px;height:48px;min-height:48px;padding:0;border:1px solid #ffad71;border-radius:50%;background:#092945eb;color:#fff;font-size:1.75rem;line-height:1;pointer-events:auto;box-shadow:0 3px 14px #00101f40;transition:background-color 220ms ease,color 220ms ease,border-color 220ms ease,transform 220ms ease}
.design-gallery .review-arrow:hover:not(:disabled){background:var(--orange);border-color:var(--orange);color:#fff;transform:scale(1.06)}
.design-gallery .review-arrow:disabled{opacity:.55;background:#092945;color:#fff}
.design-gallery .review-position{justify-self:center;align-self:end;min-width:0;margin:0;padding:7px 14px;border-radius:30px;background:#092945eF;color:#fff;font-size:.8125rem;white-space:nowrap}
@media(prefers-reduced-motion:reduce){.design-gallery .review-arrow{transition:none;transform:none!important}}
.craftsmanship-story .about-copy{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;align-items:start;width:100%;min-width:0;margin:0}
.craftsmanship-story .about-copy h2{font-size:clamp(2rem,2.9vw,2.625rem);line-height:1.22;letter-spacing:-.035em}
.craftsmanship-story .about-copy p:not(.eyebrow){font-size:1.0625rem;color:#354d60;line-height:1.8}
.craftsmanship-story h2 em{font-style:normal;color:#476276}
.craftsmanship-details{list-style:none;padding:0;margin:26px 0;display:flex;flex-wrap:wrap;gap:10px 20px;color:#173b57;font-size:.875rem;font-weight:700}
.craftsmanship-details li{padding-left:12px;border-left:2px solid #f47920;line-height:1.4}
@media(max-width:1000px){.craftsmanship-story .about-grid{grid-template-columns:minmax(0,1fr);gap:36px}.craftsmanship-story .design-gallery{aspect-ratio:16/9;max-height:420px}}
@media(max-width:1000px){.introduction-grid{grid-template-columns:1fr;gap:30px}.introduction-heading h2{font-size:clamp(3rem,6vw,4rem)}.introduction-copy{border-left:0;border-top:1px solid #dcdedb;padding:26px 0 0}.introduction-copy p{max-width:72ch}.introduction-tagline{max-width:none}.company-introduction::before{inset:0 0 40% 25%;opacity:.06}}
@media(max-width:960px){.numbers-layout{grid-template-columns:.8fr 1.4fr;gap:32px}.numbers-grid{gap:22px}.experience-number{padding-left:24px}.metric-item .metric-value{font-size:clamp(2rem,4.2vw,3rem)}.reasons-documentation{grid-template-columns:1fr}.reasons-work-photos{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
 .introduction-topline{margin-bottom:26px;gap:16px}.introduction-topline .eyebrow{font-size:.75rem}.introduction-copy p{font-size:1.0625rem;line-height:1.8}
 .numbers-heading{margin-bottom:32px}.numbers-layout{grid-template-columns:1fr;gap:34px}
 .experience-number{display:grid;grid-template-columns:auto 1fr;column-gap:24px;align-items:center;justify-content:start;padding:0 0 0 20px}
 .metric-kicker{grid-column:1/-1;font-size:.8125rem}.experience-number .metric-value{grid-row:2/4;margin:12px 0 0;font-size:clamp(4.5rem,17vw,6.5rem)}
 .experience-number h3{align-self:end;font-size:1rem;margin:12px 0 6px}.metric-note{font-size:.875rem;align-self:start;line-height:1.6;max-width:25ch}.experience-number-rule{display:none}
 .numbers-grid{gap:22px 24px}.metric-item{padding-top:18px}.metric-item dt{font-size:.875rem;gap:8px;flex-wrap:wrap;margin-bottom:12px}
 .metric-item .metric-value{font-size:clamp(1.9rem,7vw,3.2rem)}.metric-icon{width:24px;height:24px}.metric-icon svg{width:22px;height:22px}
 .reasons-heading{gap:16px;margin-bottom:30px}.reasons-heading>p{font-size:1.0625rem;max-width:none}
 .reasons-grid{gap:16px}.reasons-grid>li{padding:22px 18px;gap:14px}.reasons-grid p{font-size:1.0625rem}
 .craftsmanship-story{padding-block:54px}.craftsmanship-story .about-grid{width:calc(100% - 40px);gap:36px}.craftsmanship-story .about-image::before{inset:-36px -20px -24px;background-position:center right}.craftsmanship-story .about-copy{grid-template-columns:1fr;gap:8px}.craftsmanship-story .about-copy h2{font-size:clamp(1.9rem,7vw,2.6rem)}
 .craftsmanship-story .design-gallery{aspect-ratio:5/2;max-height:220px}
 .design-gallery .review-controls{padding:12px;gap:8px}
}
@media(max-width:380px){.numbers-grid{gap:16px}.metric-item dt{display:block;min-height:56px}.metric-icon{margin-bottom:8px}.experience-number{column-gap:18px;padding-left:15px}.experience-number .metric-value{font-size:4.25rem}.metric-note{font-size:.875rem}}
@media(max-width:680px){.reasons-grid{grid-template-columns:1fr;gap:18px}.reasons-grid>li{padding:24px 20px;gap:16px}.introduction-heading h2{font-size:clamp(2.375rem,8.5vw,3.625rem)}.introduction-tagline{font-size:.75rem;letter-spacing:.11em}.introduction-stages{margin-top:30px}}
@media(max-width:600px){.introduction-topline>span{display:none}.introduction-stages{grid-template-columns:1fr;gap:16px}.introduction-stages>li{grid-template-columns:52px minmax(0,1fr);padding:22px;gap:20px}.introduction-stage-symbol{gap:10px}.introduction-stage-copy{padding-left:20px}.introduction-stages h3{font-size:1.1875rem}.introduction-stages p{font-size:1.0625rem}.reasons-documentation{gap:24px}.reasons-work-photos{grid-template-columns:1fr;gap:24px}.reasons-body{gap:32px}.reasons-documentation figcaption{padding:16px 18px}.reasons-project-photo figcaption p{font-size:1.0625rem}.documentation-label{letter-spacing:.04em}.reasons-actions{flex-direction:column;align-items:stretch;gap:18px;padding-top:24px;margin-top:26px}.reasons-actions .text-link{align-self:center}.reasons-actions .button{width:100%}.metric-item{padding:18px 14px}.numbers-grid{gap:16px}.company-numbers::before{background-position:center right}}

/* Full reviews remain on this page; native details provide a no-script fallback. */
.review-expand{margin:0 0 24px}
.review-expand .review-full{cursor:pointer;margin:0;min-height:44px;list-style:none}
.review-full::-webkit-details-marker{display:none}
.review-expand[open] .review-full span{transform:rotate(45deg)}
.review-expanded-copy p{font-size:1rem;line-height:1.85;color:#435969;margin:0 0 20px}
.review-expand[open] .review-expanded-copy{margin-top:16px}
.review-modal{width:min(720px,calc(100% - 32px));max-height:calc(100dvh - 48px);margin:auto;padding:0;border:0;border-top:4px solid var(--orange);border-radius:8px;background:#fff;color:var(--navy);box-shadow:0 24px 100px #001b3d66;overscroll-behavior:contain}
.review-modal::backdrop{background:rgba(5,24,40,.78)}
.review-modal-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 30px;border-bottom:1px solid #e3e8eb;background:#f6f3ed;position:sticky;top:0;z-index:1}
.review-modal-bar>p{margin:0;font-size:.875rem;font-weight:700;letter-spacing:.09em;color:#954205}
.review-modal-close{display:inline-flex;gap:14px;align-items:center;min-height:44px;background:transparent;border:1px solid #bdc8cf;border-radius:4px;padding:8px 14px;font:700 .875rem/1.5 'DM Sans',sans-serif;color:var(--navy);cursor:pointer}
.review-modal-close span{font-size:1.6rem;line-height:1}
.review-modal-close:hover{background:#e7edf1}.review-modal-close:focus-visible{outline:3px solid var(--orange);outline-offset:3px}
.review-modal-content{padding:32px}
.review-modal-author{display:flex;gap:18px;align-items:center;margin-bottom:28px}
.review-modal-author img{width:64px;height:64px;border-radius:50%;object-fit:cover;object-position:center 30%;flex-shrink:0}
.review-modal-author h2{font-size:clamp(1.3rem,4.8vw,1.9rem);line-height:1.3;letter-spacing:-.02em;margin:0}
.review-modal .review-expanded-copy p:last-child{margin-bottom:0}
body.review-is-open{overflow:hidden}.review-is-open .mobile-contact-bar,.review-is-open .floating-whatsapp{visibility:hidden}
@media(max-width:600px){.review-modal{max-height:calc(100dvh - 24px);width:calc(100% - 24px)}.review-modal-bar{padding:12px 20px}.review-modal-content{padding:24px 22px}.review-modal-author{gap:14px}}

/* Supplied icons in the three-part trust strip below the banner. */
.hero-trust-list .brand-service-icon{display:block;width:96px;height:96px;object-fit:contain;flex-shrink:0;transform:scale(1);transform-origin:center;transition:transform 320ms cubic-bezier(.22,1,.36,1)}
@media(hover:hover) and (pointer:fine){.hero-trust-list li:hover .brand-service-icon{transform:scale(1.12)}}
@media(hover:none), (pointer:coarse){.hero-trust-list li.is-touch-active .brand-service-icon{transform:scale(1.12)}}
@media(prefers-reduced-motion:reduce){.hero-trust-list .brand-service-icon{transform:none!important;transition:none!important}}
@media(max-width:760px){.hero-trust-list .brand-service-icon{width:76px;height:76px}}
@media(max-width:380px){.hero-trust-list .brand-service-icon{width:68px;height:68px}}

/* The supplied artwork includes its own title and play symbol. */
.video-custom-artwork .video-load{background:transparent}
.video-custom-artwork .video-load>*{visibility:hidden}

/* Clear, coordinated feedback for the selected homepage sections. */
.projects-heading{grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:48px;align-items:center;margin-bottom:48px}
.projects-heading .projects-eyebrow{font-size:clamp(.8125rem,1.25vw,1.0625rem);line-height:1.65;letter-spacing:.065em;text-transform:none;margin-bottom:18px;color:#954005}
.projects-eyebrow>span{display:inline-block;color:var(--navy);font-weight:800;letter-spacing:.015em}
.projects-heading h2{font-size:clamp(3rem,6.6vw,5.75rem);font-weight:800;line-height:1.12;letter-spacing:-.055em;color:var(--navy)}
.comparison-title{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:.15em}
.comparison-title>span{display:inline-block}
.comparison-title-slash{color:var(--orange);font-weight:500}
.comparison-title-after{background:linear-gradient(transparent 74%,#f4792038 74%,#f4792038 94%,transparent 94%)}
.projects-heading .heading-rule{width:116px;height:3px;margin-top:24px}
.transformation{min-width:0}
.comparison{border-radius:6px;box-shadow:0 8px 26px #09294512}
.compare-label{font-size:.875rem;letter-spacing:.025em;padding:6px 14px;border:1px solid #ffffff75;border-radius:3px}
.after-label{color:#fff;background:#ffad71;border-color:#ffad71}
@media(max-width:960px){.projects-heading{grid-template-columns:1fr;gap:24px}.projects-heading h2{font-size:clamp(3.5rem,8.5vw,5.25rem)}}
@media(max-width:680px){.projects-heading{margin-bottom:32px}.projects-heading h2{font-size:clamp(2.75rem,11.8vw,4.5rem)}.projects-heading .projects-eyebrow{font-size:.8125rem;letter-spacing:.035em;max-width:34ch}.projects-heading .heading-rule{width:88px;margin-top:20px}.compare-label{top:12px;font-size:.8125rem;padding:5px 11px}.before-label{left:12px}.after-label{right:12px}}
.introduction-stages>li{transition:background-color 280ms ease,border-color 280ms ease,box-shadow 280ms ease,transform 320ms var(--motion-ease)}
.introduction-stages h3,.introduction-stages p,.introduction-stage-symbol,.introduction-stage-symbol>span{transition:color 280ms ease}
.introduction-stage-copy{transition:border-color 280ms ease}
.introduction-stage-symbol svg{transition:transform 320ms var(--motion-ease)}
.hero-caption>span{display:inline-block;position:relative;transition:color 220ms ease,transform 320ms var(--motion-ease)}
.hero-caption>span::after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:2px;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:transform 320ms var(--motion-ease)}
.craftsmanship-details li{padding:8px 12px;border:1px solid transparent;border-left:2px solid var(--orange);border-radius:3px;transition:background-color 260ms ease,color 260ms ease,border-color 260ms ease,transform 320ms var(--motion-ease),box-shadow 260ms ease}
.testimonial-card{transition:background-color 280ms ease,border-color 280ms ease,box-shadow 280ms ease,transform 320ms var(--motion-ease)}
.testimonial-card .testimonial-detail,.testimonial-card .review-card-label,.testimonial-card .review-full,.testimonial-card .review-full span,.testimonial-card figcaption strong,.testimonial-card figcaption span,.testimonial-card .review-expanded-copy p{transition:color 280ms ease}
.testimonial-card figcaption{transition:border-color 280ms ease}
.testimonial-card:focus-within{background:var(--navy);border-color:var(--orange);box-shadow:inset 0 0 0 1px var(--orange)}
.testimonial-card:focus-within .testimonial-detail,.testimonial-card:focus-within .review-expanded-copy p,.testimonial-card:focus-within figcaption span{color:#d1dfe9}
.testimonial-card:focus-within .review-card-label,.testimonial-card:focus-within .review-full span{color:#ffad71}
.testimonial-card:focus-within .review-full,.testimonial-card:focus-within figcaption strong{color:#fff}
.testimonial-card:focus-within figcaption{border-color:#49637a}
.commercial-logos>li{transition:border-color 260ms ease,background-color 260ms ease,box-shadow 260ms ease,transform 320ms var(--motion-ease)}
.commercial-logos img{transition:transform 360ms var(--motion-ease)}
.commercial-logos span{transition:color 260ms ease}
.commercial-services>div{transition:background-color 260ms ease,box-shadow 260ms ease,transform 320ms var(--motion-ease)}
.commercial-services dt{transition:color 260ms ease}
.video-testimonial-heading h2{font-size:clamp(1.875rem,3.2vw,3.25rem);font-weight:800;line-height:1.15;letter-spacing:-.025em;text-transform:uppercase;color:var(--navy)}
.video-testimonials .video-testimonial-tagline{margin:18px 0 0;font-size:clamp(1.125rem,1.6vw,1.375rem);font-weight:500;line-height:1.5;color:var(--navy-2)}
@media(hover:hover) and (pointer:fine){
 .introduction-stages>li:hover{background:var(--navy);border-color:var(--orange);box-shadow:0 10px 24px #0929451c;transform:translateY(-4px)}
 .introduction-stages>li:hover h3{color:#fff}
 .introduction-stages>li:hover p{color:#d1dfe9}
 .introduction-stages>li:hover .introduction-stage-symbol,.introduction-stages>li:hover .introduction-stage-symbol>span{color:#ffad71}
 .introduction-stages>li:hover .introduction-stage-copy{border-color:#527087}
 .introduction-stages>li:hover svg{transform:scale(1.08)}
 .hero-caption>span:hover{color:#ffad71;transform:translateY(-2px)}
 .hero-caption>span:hover::after{transform:scaleX(1)}
 .craftsmanship-details li:hover{background:var(--navy);color:#fff;border-color:var(--orange);transform:translateY(-3px);box-shadow:0 5px 14px #0929451a}
 .testimonial-card:hover{background:var(--navy);border-color:var(--orange);box-shadow:inset 0 0 0 1px var(--orange);transform:translateY(-3px)}
 .testimonial-card:hover .testimonial-detail,.testimonial-card:hover .review-expanded-copy p,.testimonial-card:hover figcaption span{color:#d1dfe9}
 .testimonial-card:hover .review-card-label,.testimonial-card:hover .review-full span{color:#ffad71}
 .testimonial-card:hover .review-full,.testimonial-card:hover figcaption strong{color:#fff}
 .testimonial-card:hover figcaption{border-color:#49637a}
 .commercial-logos>li:hover{background:#f0f5f9;border-color:var(--orange);box-shadow:0 10px 22px #09294518;transform:translateY(-4px)}
 .commercial-logos>li:hover img{transform:scale(1.045)}
 .commercial-logos>li:hover span{color:#a44704}
 .commercial-services>div:hover{background:#fff;box-shadow:inset -3px 0 var(--orange);transform:translateX(4px)}
 .commercial-services>div:hover dt{color:#a44704}
}
@media(hover:none), (pointer:coarse){
 .introduction-stages>li.is-touch-active{background:var(--navy);border-color:var(--orange);box-shadow:0 10px 24px #0929451c;transform:translateY(-4px)}
 .introduction-stages>li.is-touch-active h3{color:#fff}
 .introduction-stages>li.is-touch-active p{color:#d1dfe9}
 .introduction-stages>li.is-touch-active .introduction-stage-symbol,.introduction-stages>li.is-touch-active .introduction-stage-symbol>span{color:#ffad71}
 .introduction-stages>li.is-touch-active .introduction-stage-copy{border-color:#527087}
 .introduction-stages>li.is-touch-active svg{transform:scale(1.08)}
 .hero-caption>span.is-touch-active{color:#ffad71;transform:translateY(-2px)}
 .hero-caption>span.is-touch-active::after{transform:scaleX(1)}
 .craftsmanship-details li.is-touch-active{background:var(--navy);color:#fff;border-color:var(--orange);transform:translateY(-3px);box-shadow:0 5px 14px #0929451a}
 .testimonial-card.is-touch-active{background:var(--navy);border-color:var(--orange);box-shadow:inset 0 0 0 1px var(--orange);transform:translateY(-3px)}
 .testimonial-card.is-touch-active .testimonial-detail,.testimonial-card.is-touch-active .review-expanded-copy p,.testimonial-card.is-touch-active figcaption span{color:#d1dfe9}
 .testimonial-card.is-touch-active .review-card-label,.testimonial-card.is-touch-active .review-full span{color:#ffad71}
 .testimonial-card.is-touch-active .review-full,.testimonial-card.is-touch-active figcaption strong{color:#fff}
 .testimonial-card.is-touch-active figcaption{border-color:#49637a}
 .commercial-logos>li.is-touch-active{background:#f0f5f9;border-color:var(--orange);box-shadow:0 10px 22px #09294518;transform:translateY(-4px)}
 .commercial-logos>li.is-touch-active img{transform:scale(1.045)}
 .commercial-logos>li.is-touch-active span{color:#a44704}
 .commercial-services>div.is-touch-active{background:#fff;box-shadow:inset -3px 0 var(--orange);transform:translateX(4px)}
 .commercial-services>div.is-touch-active dt{color:#a44704}
}
@media(prefers-reduced-motion:reduce){
 .introduction-stages>li,.introduction-stage-symbol svg,.hero-caption>span,.craftsmanship-details li,.testimonial-card,.commercial-logos>li,.commercial-logos img,.commercial-services>div{transform:none!important}
}

/* Warranty: a clear commitment alongside the materials and workmanship section. */
.warranty-band{position:relative;isolation:isolate;overflow:hidden;background:var(--navy);color:#fff;padding-block:64px;border-block:1px solid #ffffff12}
.warranty-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:96px;align-items:center}
.warranty-aura,.warranty-sweep,.warranty-edge{position:absolute;pointer-events:none;z-index:0}
.warranty-aura{inset:-6%;background:radial-gradient(ellipse at 22% 55%,#35678f70,transparent 62%),radial-gradient(ellipse at 85% 65%,#ffad7114,transparent 50%);opacity:.35;transition:opacity 700ms ease,transform 1100ms var(--motion-ease)}
.warranty-sweep{inset:0;background:linear-gradient(110deg,transparent 35%,#ffffff0a 50%,transparent 65%);opacity:0}
.warranty-edge{bottom:0;left:0;width:100%;height:2px;background:linear-gradient(90deg,transparent,#ffad71 35%,var(--orange) 65%,transparent);opacity:.6;transform-origin:left;transition:opacity 400ms ease}
.warranty-kicker{display:flex;align-items:center;gap:12px;color:#ffad71;font-size:clamp(1.125rem,1.6vw,1.375rem);line-height:1.45;letter-spacing:.06em;margin-bottom:22px}
.warranty-kicker span{min-width:0;text-wrap:balance}
.warranty-kicker svg{width:32px;height:36px;flex-shrink:0}
.warranty-highlight h2{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin:0;color:#fff}
.warranty-number{font-size:clamp(5rem,8.5vw,8rem);font-weight:800;line-height:1;letter-spacing:-.07em;color:#ffad71}
.warranty-label{font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.15;letter-spacing:-.03em}
.warranty-copy{position:relative;padding-left:40px;border-left:1px solid transparent}
.warranty-divider{position:absolute;top:0;left:-1px;width:1px;height:100%;background:linear-gradient(to bottom,#ffad71,#ffffff30);transform-origin:top left;pointer-events:none}
.warranty-copy>p{font-size:1.0625rem;line-height:1.8;color:#d0dce6;margin:0 0 24px}
.warranty-copy .button{font-size:.9375rem;min-height:54px;border-radius:3px}
.warranty-copy>.warranty-terms{font-size:.875rem;line-height:1.65;color:#b8cad8;margin:18px 0 0}
@media(max-width:960px){.warranty-grid{gap:40px}.warranty-copy{padding-left:28px}.warranty-highlight h2{gap:18px}}
@media(max-width:680px){.warranty-band{padding-block:48px}.warranty-grid{grid-template-columns:minmax(0,1fr);gap:28px}.warranty-copy{padding:28px 0 0;border-left:0;border-top:1px solid transparent}.warranty-divider{top:-1px;left:0;width:100%;height:1px;background:linear-gradient(to right,#ffad71,#ffffff30)}.warranty-kicker{font-size:1.125rem;letter-spacing:.04em}.warranty-copy .button{width:100%}.warranty-highlight h2{gap:20px}}

/* Warranty motion follows the same one-time reveal and reduced-motion settings. */
.warranty-number{transform-origin:left center;transition:color 300ms ease,transform 450ms var(--motion-ease)}
.warranty-kicker svg{transition:transform 450ms var(--motion-ease)}
.warranty-label{transition:color 400ms ease,transform 650ms var(--motion-ease)}
.warranty-copy .button{transition:background-color 260ms ease,color 260ms ease,border-color 260ms ease,box-shadow 300ms ease,transform 300ms var(--motion-ease)}
.warranty-copy .button>span{transition:transform 300ms var(--motion-ease)}
.warranty-copy .button:focus-visible{background:#fff;color:var(--navy);border-color:var(--orange)}
.warranty-band:focus-within .warranty-aura{opacity:.85}
.warranty-band:focus-within .warranty-edge{opacity:1}
@media(hover:hover) and (pointer:fine){
  .warranty-band:hover .warranty-aura{opacity:.85;transform:scale(1.05)}
  .warranty-band:hover .warranty-edge{opacity:1}
  .warranty-band:hover .warranty-number{color:#ffbd8d;transform:translateY(-3px) scale(1.05)}
  .warranty-band:hover .warranty-kicker svg{transform:translateY(-2px) scale(1.12)}
  .warranty-band:hover .warranty-label{color:#ffbd8d;transform:translateX(4px)}
  .warranty-copy .button:hover{background:#fff;color:var(--navy);border-color:var(--orange);transform:translateY(-3px);box-shadow:0 0 0 3px #ffad7126,0 10px 24px #0002}
  .warranty-copy .button:hover>span{transform:translate(3px,-3px)}
}
@media(hover:none), (pointer:coarse){
  .warranty-band.is-touch-active .warranty-aura{opacity:.85;transform:scale(1.05)}
  .warranty-band.is-touch-active .warranty-edge{opacity:1}
  .warranty-band.is-touch-active .warranty-number{color:#ffbd8d;transform:translateY(-3px) scale(1.05)}
  .warranty-band.is-touch-active .warranty-kicker svg{transform:translateY(-2px) scale(1.12)}
  .warranty-band.is-touch-active .warranty-label{color:#ffbd8d;transform:translateX(4px)}
  .warranty-copy .button.is-touch-active{background:#fff;color:var(--navy);border-color:var(--orange);transform:translateY(-3px);box-shadow:0 0 0 3px #ffad7126,0 10px 24px #0002}
  .warranty-copy .button.is-touch-active>span{transform:translate(3px,-3px)}
}
@media(prefers-reduced-motion:reduce){.warranty-number,.warranty-label,.warranty-aura,.warranty-kicker svg,.warranty-copy .button,.warranty-copy .button>span{transform:none!important}}

/* Compact customer stories, with project details beneath each video. */
.testimonials-videos{padding-block:60px;background:linear-gradient(145deg,#fff 50%,#f5f7f9);overflow:hidden}
.testimonials-videos>.wrap{width:calc(100% - 112px);max-width:1320px}
.testimonials-videos .video-testimonial-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:24px}
.testimonials-videos .video-section-eyebrow{display:flex;align-items:center;gap:14px;margin:0 0 10px!important;max-width:none!important;font-size:.75rem!important;line-height:1.5!important;letter-spacing:.22em;text-transform:uppercase;font-weight:700;color:#6d8092!important}
.video-section-eyebrow::before{content:"";width:38px;height:2px;background:var(--orange);flex:none}
.testimonials-videos .video-testimonial-heading h2{font-size:clamp(2rem,3.35vw,3.25rem);line-height:1.13;letter-spacing:-.04em;font-weight:800}
.video-testimonial-heading h2>span{color:#f46a16}
.testimonials-videos .video-testimonial-tagline{margin:10px 0 0!important;font-size:clamp(1rem,1.6vw,1.25rem)!important;line-height:1.45!important;color:#536b82!important}
.testimonials-videos .video-all{flex:none;min-height:46px;padding:10px 20px;border:1px solid var(--orange);border-radius:999px;font-size:.9375rem;background:#fff;gap:20px;white-space:nowrap}
.testimonials-videos .video-all:hover{background:var(--navy);border-color:var(--navy);color:#fff}
.video-stories-carousel{position:relative}
.video-stories-carousel .review-track.video-testimonial-grid{--review-columns:4;--review-gap:22px;padding:8px 0 16px;scrollbar-width:none;align-items:stretch}
.video-stories-carousel .review-track::-webkit-scrollbar{display:none}
.video-stories-carousel .review-track>.video-testimonial-card{display:flex;flex-direction:column;border:1px solid #e5e9ed;border-radius:14px;background:#fff;overflow:hidden;box-shadow:0 6px 18px #09294508;transition:border-color 240ms ease,box-shadow 240ms ease}
.video-stories-carousel .video-testimonial-card:focus-within{border-color:var(--orange);box-shadow:0 0 0 2px #f4792033}
.video-stories-carousel .video-facade.video-portrait{height:auto;aspect-ratio:2/3;flex:none;background:var(--navy)}
.video-stories-carousel .video-thumbnail{object-position:center 42%}
.video-stories-carousel .video-facade .video-load{background:transparent;padding:0;z-index:3}
.video-stories-carousel .video-play{width:62px;height:62px;background:#ff7b20;border:2px solid #fff;color:#fff;padding:0;box-shadow:0 4px 20px #09294526}
.video-stories-carousel .video-play svg{width:30px;height:30px;margin-left:3px}
.video-card-caption{position:absolute;inset:auto 0 0;padding:55px 20px 20px;color:#fff;background:linear-gradient(transparent,rgba(4,18,30,.86));pointer-events:none;z-index:2}
.video-card-caption h3{margin:0 0 7px;color:#fff;font-size:clamp(1.1rem,1.5vw,1.4rem);line-height:1.2;font-weight:800;letter-spacing:-.025em}
.video-card-caption p{margin:0;max-width:28ch;font-size:.9375rem;line-height:1.4;font-style:italic;color:#fff;text-wrap:pretty}
.video-stories-carousel .video-loaded .video-card-caption{visibility:hidden}
.video-stories-carousel .video-facade .video-native{z-index:4;object-fit:contain}
.video-project-details{display:grid;gap:12px;padding:18px 18px 20px;margin:0;background:#fff;flex:1;align-content:start}
.video-project-row{display:grid;grid-template-columns:24px minmax(0,1fr);gap:12px;align-items:start}
.video-project-row svg{width:24px;height:24px;color:var(--navy);margin-top:3px}
.video-project-row dt{font-size:.875rem;line-height:1.3;color:#60758a;margin:0 0 2px}
.video-project-row dd{margin:0;font-size:.9375rem;line-height:1.4;font-weight:500;color:var(--navy);overflow-wrap:break-word}
.video-stories-carousel .review-navigation{display:flex;justify-content:center;align-items:center;margin:0;min-height:36px;gap:0}
.video-stories-carousel .review-navigation[hidden]{display:none}
.video-stories-carousel .review-arrow{position:absolute;top:calc(50% - 115px);z-index:4;width:44px;height:44px;min-height:44px;padding:0;border:1px solid #edf0f3;border-radius:50%;background:#fff;color:var(--navy);box-shadow:0 5px 22px #0929450d}
.video-stories-carousel .review-arrow svg{width:22px;height:22px}
.video-stories-carousel [data-review-previous]{left:-51px}
.video-stories-carousel [data-review-next]{right:-51px}
.video-stories-carousel .review-arrow:disabled{opacity:.35;box-shadow:none}
.video-stories-carousel .review-arrow:hover:not(:disabled){color:#fff;background:var(--navy)}
.video-pagination{display:flex;flex-wrap:wrap;min-width:0;justify-content:center;align-items:center;gap:0}
.video-page-dot{display:grid;place-items:center;width:32px;height:36px;padding:0;border:0;background:transparent;cursor:pointer}
.video-page-dot::before{content:"";display:block;width:10px;height:10px;border-radius:50%;background:#a9b4bf;transition:background-color 200ms ease,transform 200ms ease}
.video-page-dot[aria-current="true"]::before{background:#ff741b;transform:scale(1.15)}
.video-page-dot:focus-visible{outline:2px solid var(--orange);outline-offset:-2px;border-radius:8px}
.video-visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;min-width:0!important}
@media(hover:hover) and (pointer:fine){.video-stories-carousel .video-testimonial-card:hover{border-color:#c8d2dc;box-shadow:0 8px 24px #09294512}}
@media(max-width:1150px){
 .video-stories-carousel .review-track.video-testimonial-grid{--review-columns:3;--review-gap:20px}
 .testimonials-videos .video-testimonial-heading h2{font-size:2.25rem}
 .testimonials-videos .video-all{padding:10px 16px;font-size:.875rem;gap:12px}
 .video-card-caption{padding:48px 16px 18px}
 .video-project-details{padding:16px 14px 18px}
 .video-project-row{gap:9px}
}
@media(max-width:900px){
 .testimonials-videos{padding-block:48px}
 .testimonials-videos>.wrap{width:calc(100% - 96px)}
 .testimonials-videos .video-testimonial-heading{align-items:flex-start;flex-direction:column;gap:18px}
 .testimonials-videos .video-all{align-self:flex-start}
 .video-stories-carousel .review-track.video-testimonial-grid{--review-columns:2;--review-gap:20px}
 .video-stories-carousel [data-review-previous]{left:-43px}
 .video-stories-carousel [data-review-next]{right:-43px}
 .video-stories-carousel .review-arrow{width:38px;height:38px;min-height:38px}
}
@media(max-width:600px){
 .testimonials-videos{padding-block:42px}
 .testimonials-videos>.wrap{width:calc(100% - 40px)}
 .testimonials-videos .video-testimonial-heading{gap:15px;margin-bottom:16px}
 .testimonials-videos .video-testimonial-heading h2{font-size:clamp(1.75rem,6.8vw,2.5rem);line-height:1.15;letter-spacing:-.04em}
 .testimonials-videos .video-section-eyebrow{font-size:.6875rem!important;letter-spacing:.18em;gap:10px}
 .video-section-eyebrow::before{width:28px}
 .testimonials-videos .video-testimonial-tagline{font-size:1rem!important}
 .testimonials-videos .video-all{min-height:42px;font-size:.875rem;padding:8px 16px}
 .video-stories-carousel .review-track.video-testimonial-grid{--review-columns:1;--review-gap:16px;padding-bottom:14px}
 .video-stories-carousel .review-track>.video-testimonial-card{flex-basis:86%;width:auto;max-width:340px;scroll-snap-align:start}
 .video-stories-carousel .video-play{width:56px;height:56px}
 .video-card-caption h3{font-size:1.25rem}
 .video-card-caption p{font-size:.9375rem}
 .video-project-details{padding:17px 18px 19px;gap:10px}
 .video-stories-carousel .review-navigation{position:relative;flex-direction:row;min-height:44px;padding-inline:48px}
 .video-stories-carousel .review-arrow{top:50%;transform:translateY(-50%);width:44px;height:44px;min-height:44px}
 .video-stories-carousel [data-review-previous]{left:0}
 .video-stories-carousel [data-review-next]{right:0}
 .video-page-dot{width:28px;height:44px}
}
@media(prefers-reduced-motion:reduce){.video-stories-carousel .video-testimonial-card,.video-page-dot::before{transition:none}.video-page-dot[aria-current="true"]::before{transform:none}}

/* Service navigation stays separate from the draggable comparison handle. */
.projects-heading>div>.comparison-kicker{margin:0 0 14px;font-size:clamp(1.5rem,2.6vw,2.5rem);font-weight:700;line-height:1.2;letter-spacing:-.035em;color:var(--navy)}
.projects-heading>div>.projects-services-title{margin:0;color:var(--navy);font-size:clamp(2.5rem,5.5vw,4.75rem);font-weight:800;line-height:1.12;letter-spacing:-.04em}
.comparison-service-link{display:block;position:absolute;inset:0}
.comparison-service-link>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.comparison-service-hint{position:absolute;right:14px;bottom:14px;display:inline-flex;gap:10px;align-items:center;padding:7px 12px;background:rgba(9,41,69,.92);border:1px solid #ffffff80;border-radius:3px;color:#fff;font-size:.8125rem;font-weight:700;pointer-events:none}
.comparison-service-hint>span{color:#ffad71}
.project-service-link{display:inline-flex;align-items:baseline;gap:12px;color:inherit;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:5px}
.project-service-link>span{color:#a44704;font-size:.85em}
.project-service-link:hover,.project-service-link:focus-visible{text-decoration-color:currentColor}
.project-service-link:focus-visible{outline:3px solid var(--orange);outline-offset:5px;border-radius:2px}
.comparison-service-link:focus-visible{outline:3px solid var(--orange);outline-offset:-3px}
.comparison-linked input[type="range"]{appearance:none;-webkit-appearance:none;inset:50% auto auto -22px;width:calc(100% + 44px);height:44px;transform:translateY(-50%);margin:0;padding:0;border:0;background:transparent;opacity:1;pointer-events:none;touch-action:none}
.comparison-linked input[type="range"]::-webkit-slider-runnable-track{height:44px;background:transparent;border:0;pointer-events:none}
.comparison-linked input[type="range"]::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:44px;height:44px;border:0;border-radius:50%;background:transparent;pointer-events:auto;cursor:ew-resize}
.comparison-linked input[type="range"]::-moz-range-track{height:44px;background:transparent;border:0;pointer-events:none}
.comparison-linked input[type="range"]::-moz-range-thumb{width:44px;height:44px;border:0;border-radius:50%;background:transparent;pointer-events:auto;cursor:ew-resize}
.comparison-linked input[type="range"]:focus-visible{outline:none}
.comparison-linked:has(input:focus-visible) .compare-line b{outline:3px solid var(--orange);outline-offset:3px}

/* Eight fully readable mobile cards, matching the supplied reference. */
.reason-copy-mobile{display:none}
@media(max-width:680px){
 .why-choose-separated{background:#f7f6f2}
 .reasons-grid{grid-template-columns:minmax(0,1fr);gap:12px}
 .reasons-grid>li{grid-template-columns:46px minmax(0,1fr);align-items:center;gap:16px;padding:14px;border:1px solid #d5dde5;border-radius:6px;box-shadow:none}
 .reasons-grid .reason-icon{width:46px;height:46px;background:#fff4e9;border-color:#ffd4b4;color:#bd5008}
 .reasons-grid .reason-icon svg{width:28px;height:28px}
 .reasons-grid h3{font-size:1.125rem;font-weight:800;line-height:1.35;letter-spacing:-.035em;margin:0 0 5px;overflow-wrap:anywhere}
 .reasons-grid p{font-size:1rem;line-height:1.45;max-width:none}
 .reason-copy-desktop{display:none}
 .reason-copy-mobile{display:inline}
 .reasons-actions{justify-content:center;padding-top:8px;margin-top:12px;gap:0}
 .reasons-actions .text-link{min-height:44px;display:inline-flex;align-items:center;border-bottom:0;font-size:1rem}
 .reasons-actions .text-link span{color:#e96b13;font-size:1.5rem}
 .reasons-actions .button{display:none}
}
@media(max-width:360px){
 .reasons-grid>li{grid-template-columns:40px minmax(0,1fr);gap:12px;padding:12px}
 .reasons-grid .reason-icon{width:40px;height:40px}
 .reasons-grid .reason-icon svg{width:25px;height:25px}
}

/* Experience Centre gallery: native swipe with manual photo controls. */
.experience-carousel{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff}
.experience-carousel-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;direction:ltr}
.experience-carousel-track::-webkit-scrollbar{display:none}
.experience-carousel-track:focus-visible{outline:3px solid var(--orange);outline-offset:-3px}
.experience-carousel-slide{flex:0 0 100%;min-width:0;margin:0;scroll-snap-align:start}
.experience-carousel-slide .experience-photo{display:block;width:100%;height:auto;object-fit:contain;background:var(--navy)}
.experience-carousel-controls{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:10px 14px;border-top:1px solid var(--line);background:#faf8f4}
.experience-carousel-controls[hidden]{display:none}
.experience-carousel-arrow{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border:1px solid #c4ced6;border-radius:50%;background:#fff;color:var(--navy);cursor:pointer;transition:background-color 180ms ease,border-color 180ms ease}
.experience-carousel-arrow svg{width:22px;height:22px}
.experience-carousel-arrow:hover:not(:disabled){background:#fff0e5;border-color:var(--orange)}
.experience-carousel-arrow:focus-visible{outline:3px solid var(--orange);outline-offset:2px}
.experience-carousel-arrow:disabled{opacity:.4;cursor:default}
.experience-carousel-count{margin:0;font-size:.875rem;font-weight:700;letter-spacing:.06em;color:var(--navy);font-variant-numeric:tabular-nums}
@media(prefers-reduced-motion:reduce){.experience-carousel-arrow{transition:none}}


.areas-hero{padding-block:34px 64px;background:#f6f3ed;border-bottom:1px solid #e1e5e8}
.areas-breadcrumb{display:flex;flex-wrap:wrap;gap:12px;font-size:.875rem;color:#526878;margin-bottom:44px}
.areas-breadcrumb a:hover{color:#b84b00}
.areas-hero h1{font-size:clamp(2.5rem,5vw,4.5rem);line-height:1.15;letter-spacing:-.045em;margin:0 0 24px}
.areas-hero .heading-rule{margin-top:24px}
.areas-intro{max-width:740px;font-size:1.125rem;line-height:1.8;color:#405b6c;margin-bottom:24px}
.areas-coverage{padding-block:64px 72px}
.areas-coverage>h2{font-size:clamp(1.8rem,3vw,2.6rem)}
.areas-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:28px 0 48px;padding:0;list-style:none}
.areas-list li{padding:20px 18px;border:1px solid #d9e0e5;border-left:3px solid #f47720;background:#fff;color:#092945;font-weight:500;font-size:1.0625rem;line-height:1.6;overflow-wrap:break-word}
.areas-list strong{font-weight:700}
.areas-support{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:32px;align-items:center;padding:36px;background:#f6f3ed;border:1px solid #e4dfd6}
.areas-support h2{font-size:1.65rem;line-height:1.3;margin-bottom:14px}
.areas-support p{max-width:620px;color:#405b6c;margin:0;line-height:1.8}
.areas-support .actions{align-items:flex-start;justify-content:center;flex-direction:column;gap:14px}
.areas-visit{margin:28px 0 0;color:#405b6c}
.areas-visit a{font-weight:700;color:#092945;text-decoration:underline;text-underline-offset:4px}
.areas-visit a:hover{color:#b84b00}
@media(max-width:960px){.areas-list{grid-template-columns:repeat(2,minmax(0,1fr))}.areas-support{grid-template-columns:minmax(0,1fr)}}
@media(max-width:600px){.areas-hero{padding-block:24px 44px}.areas-breadcrumb{margin-bottom:30px}.areas-coverage{padding-block:44px 48px}.areas-list{grid-template-columns:minmax(0,1fr);gap:12px;margin-bottom:32px}.areas-list li{padding:16px;font-size:1rem}.areas-support{padding:24px;gap:24px}.areas-support .button{width:100%;white-space:normal;text-align:center}}

