@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--navy:#092b40;--blue:#007fac;--cyan:#83d8f5;--muted:#526b7b;--line:#dce6ec;--paper:#f1f6f9;--gutter:max(6%,calc((100vw - 1360px)/2));--ease:cubic-bezier(.2,.65,.3,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;font:16px/1.75 Manrope,Arial,sans-serif;color:var(--navy);background:#fff;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2{font-weight:500;line-height:1.12;letter-spacing:-.045em;text-wrap:balance}h2{font-size:clamp(2.1rem,3.6vw,3.5rem);margin:20px 0 0}h3{line-height:1.35;letter-spacing:-.025em}em{font-style:normal;color:var(--blue)}p{color:var(--muted)}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #008fc5;outline-offset:5px}input:focus,select:focus,textarea:focus{outline:2px solid var(--blue);outline-offset:2px}::selection{background:#c6edf9;color:var(--navy)}[hidden]{display:none!important}.skip-link{position:fixed;top:-100px;left:20px;z-index:100;background:#fff;padding:12px}.skip-link:focus{top:12px}
.topline{display:flex;justify-content:space-between;gap:20px;background:var(--navy);color:#d5e8f2;padding:9px var(--gutter);font-size:.75rem;letter-spacing:.06em}.topline a{letter-spacing:0}header{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:24px;background:#fffffff5;backdrop-filter:blur(16px);padding:20px var(--gutter);border-bottom:1px solid var(--line);transition:box-shadow .25s}header.is-scrolled{box-shadow:0 6px 30px #092b400d}.logo{width:164px}nav{display:flex;align-items:center;gap:25px;font-size:.875rem;font-weight:600}nav>a:not(.button){padding:8px 0}nav>a:hover{color:var(--blue)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:14px 24px;border:1px solid var(--blue);background:var(--blue);color:#fff;border-radius:4px;font-size:.875rem;line-height:1.5;font-weight:700;transition:background .2s,transform .2s}.button:hover{background:#00668d;border-color:#00668d;transform:translateY(-2px);color:#fff}.button.small{padding:12px 18px;min-height:46px}.outline{background:transparent;color:var(--navy);border-color:#a5bac7}.menu{display:none}
.hero{position:relative;background:var(--navy);color:#fff;isolation:isolate;overflow:hidden}.hero-slide{display:grid;grid-template-columns:1.05fr 1fr;min-height:660px;position:absolute;inset:0;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .7s}.hero-slide.is-active{position:relative;opacity:1;visibility:visible;pointer-events:auto}.hero-copy{grid-column:1;grid-row:1;padding:78px 6% 150px max(12%,calc((100vw - 1360px)/2));align-self:center;z-index:2}.hero-scene{grid-column:2;grid-row:1;position:relative;overflow:hidden;margin:32px 32px 114px 0;border-radius:4px}.hero-scene img{width:100%;height:100%;object-fit:cover;object-position:center;position:absolute;inset:0;transition:transform 7s linear;transform:scale(1.04)}.hero-slide.is-active .hero-scene img{transform:scale(1)}.hero h1,.hero h2{font-size:clamp(2.6rem,4.4vw,4.4rem);margin:24px 0;line-height:1.12}.hero em{color:var(--cyan)}.hero p{color:#c6dae7;font-size:1rem;max-width:420px;line-height:1.85;margin:0}.eyebrow{font-size:.75rem;letter-spacing:.12em;font-weight:700;line-height:1.7;color:#b6d5e5}.eyebrow.blue,.about .eyebrow,.contact .eyebrow{color:var(--blue)}.hero .actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:32px}.hero .button{background:#fff;color:var(--navy);border-color:#fff}.hero .button:hover{background:#c9effb;border-color:#c9effb}.hero-link{font-size:.875rem;border-bottom:1px solid #7c9fae;padding:10px 0;color:#e1eef4}.hero-link span{font-size:.75rem;margin-left:9px;color:#a9c8d8}.hero-rail{position:absolute;bottom:25px;left:var(--gutter);right:var(--gutter);display:flex;gap:30px;align-items:center;z-index:5}.hero-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;max-width:900px;width:100%}.hero-tabs button{position:relative;display:flex;gap:15px;align-items:center;text-align:left;min-height:54px;background:none;color:#a9c2d2;border:0;border-top:1px solid #426174;padding:15px 0}.hero-tabs strong{font-size:.875rem;font-weight:500}.hero-tabs button>span{font-size:.75rem;color:#93cce3}.hero-tabs button.is-active{color:#fff}.hero-tabs i{position:absolute;left:0;top:-1px;width:0;height:2px;background:var(--cyan)}.hero-tabs .is-active i{width:100%;transition:width 7s linear}.slider-pause{width:44px;height:44px;flex-shrink:0;margin-left:auto;border:1px solid #698a9d;background:none;border-radius:50%;color:white}.hero-side-label{display:none}
.facts{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;padding:36px var(--gutter);border-bottom:1px solid var(--line)}.facts>div{padding-left:28px;border-left:1px solid var(--line)}.facts>div:first-child{padding-left:0;border:0}.facts strong{font-size:2rem;font-weight:600;letter-spacing:-.04em;line-height:1.3;display:block}.facts strong span{color:var(--blue)}.facts div>span{display:block;font-size:.875rem;color:var(--muted);margin-top:6px}.section,.about{padding:100px var(--gutter)}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-bottom:45px}.section-head>p,.testimonial-intro{max-width:355px;margin:0;flex-shrink:0}.section-head p{margin-bottom:0}.references{padding-top:48px;padding-bottom:48px}.references h2{font-size:1.8rem;letter-spacing:-.03em}.references .section-head{margin-bottom:28px;align-items:center}.references .section-head>p{font-size:.875rem}.reference-logos{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.reference-logos>div{display:flex;align-items:center;justify-content:center;min-width:0;height:83px;border:1px solid #edf1f4;border-radius:4px;padding:16px}.reference-logos img{max-height:52px;width:100%;object-fit:contain}
#solutions{background:var(--paper)}.filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:32px}.filters button{background:transparent;border:1px solid #bcced9;border-radius:30px;min-height:44px;padding:10px 20px;color:#3e5b6d;font-size:.875rem}.filters button.active{background:var(--navy);border-color:var(--navy);color:white}.products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.product{display:flex;flex-direction:column;min-width:0;background:white;border:1px solid var(--line);border-radius:6px;overflow:hidden;transition:transform .3s,box-shadow .3s}.product:hover,.product:focus-within{transform:translateY(-5px);box-shadow:0 18px 35px #092b4010}.product-img{position:relative;aspect-ratio:1.5;overflow:hidden;background:#e7eef3}.product-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.product:hover img{transform:scale(1.035)}.product-number{position:absolute;top:16px;left:16px;background:#fffffff0;padding:4px 10px;font-size:.75rem;border-radius:3px;color:var(--navy)}.product-copy{padding:28px;display:flex;flex-direction:column;flex:1}.product-category{font-size:.75rem;font-weight:700;letter-spacing:.07em;color:var(--blue);margin-bottom:13px}.product h3{font-size:1.4rem;margin:0 0 15px}.product p{font-size:1rem;margin-bottom:20px}.product-tags{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:26px}.product-tags span{font-size:.75rem;background:#edf4f7;color:#476477;padding:5px 8px;border-radius:3px}.product a{font-size:.875rem;font-weight:700;color:var(--blue);border-top:1px solid var(--line);padding-top:16px;margin-top:auto}.product-featured{grid-column:1/-1;display:grid;grid-template-columns:1.1fr 1fr;background:var(--navy);color:white}.product-featured .product-img{aspect-ratio:auto;min-height:340px}.product-featured .product-copy{padding:45px}.product-featured h3{font-size:2rem;font-weight:500}.product-featured p{color:#c5d7e2}.product-featured .product-category,.product-featured a{color:var(--cyan)}.product-featured a{border-color:#436273}.product-featured .product-tags span{background:#244557;color:#d0e7f1}
.about{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center}.about-photo{position:relative;min-height:530px;height:100%}.about-photo img{position:absolute;width:100%;height:100%;object-fit:cover;border-radius:5px}.location{position:absolute;bottom:22px;left:22px;right:22px;padding:22px;background:#fffffff0;backdrop-filter:blur(10px);font-size:.75rem;letter-spacing:.08em}.location strong{display:block;margin-top:8px;font-size:1.25rem;letter-spacing:-.02em;font-weight:600}.about-copy>p{margin:25px 0}.about-signature{display:flex;flex-wrap:wrap;gap:10px 22px;border-top:1px solid var(--line);padding-top:22px;margin-bottom:25px;font-size:.875rem}.text-link{display:inline-block;font-size:.875rem;font-weight:700;color:var(--blue);padding-bottom:6px;border-bottom:1px solid #99bfce}
.team-section{padding-top:20px}.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.team-grid article{padding:30px;border:1px solid var(--line);border-top:3px solid var(--blue);border-radius:4px}.team-monogram{display:grid;place-items:center;width:62px;height:62px;border-radius:50%;background:#edf5f8;color:var(--blue);font-size:1.25rem;margin-bottom:28px}.team-role{display:block;font-size:.75rem;font-weight:700;letter-spacing:.05em;color:var(--blue);margin-bottom:13px}.team-grid h3{font-size:1.4rem;margin-bottom:12px}.team-grid p{font-size:1rem}.team-contacts{display:flex;gap:7px;flex-wrap:wrap}.team-contacts button{display:flex;align-items:center;gap:6px;font-size:.875rem;padding:7px;border:1px solid var(--line);background:#fff;color:#526b7b;border-radius:3px}.team-contacts svg{width:16px;height:16px}.linkedin-mark{font-weight:800}.team-contact-note{display:block;margin-top:12px;font-size:.75rem;color:var(--muted)}button:disabled{opacity:.65;cursor:default;transform:none}
#expertise{background:var(--navy);color:#fff}#expertise .blue,#expertise em{color:var(--cyan)}#expertise p{color:#c4d7e3}.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px;margin-top:55px}.steps article{border-top:1px solid #506c7d;padding-top:24px}.steps article>span{display:block;font-size:2.8rem;line-height:1;color:var(--cyan);margin-bottom:38px;font-weight:400}.steps h3{font-size:1.125rem}.steps p{font-size:1rem;margin:0}
.return-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.gallery-item{position:relative;height:275px;padding:0;border:0;border-radius:4px;overflow:hidden;background:var(--paper);text-align:left}.gallery-item:first-child{grid-column:span 2;height:380px}.gallery-item:nth-child(2){height:380px}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.gallery-item:hover img{transform:scale(1.04)}.gallery-item>span{position:absolute;inset:auto 0 0;padding:40px 22px 20px;background:linear-gradient(transparent,#092b40ed);color:white;display:flex;justify-content:space-between;gap:10px;font-size:.75rem;letter-spacing:.05em}.gallery-item b{font-weight:500;font-size:.875rem;letter-spacing:0}dialog{max-width:min(1000px,92vw);max-height:92svh;padding:20px;border:0;border-radius:6px;background:#fff;color:var(--navy)}dialog::backdrop{background:#041827df;backdrop-filter:blur(5px)}#gallery-large{max-height:72svh;margin:auto;object-fit:contain}.gallery-close{display:block;margin:0 0 15px auto;border:1px solid var(--line);background:white;padding:10px 18px;border-radius:3px}#gallery-caption{font-size:.875rem;margin:15px 0 0}
.testimonials{background:var(--paper)}.testimonial-intro p{margin-bottom:12px}.testimonial-demo-label{display:inline-block;background:#e0ebf1;color:#3c5d70;padding:5px 10px;border-radius:3px;font-size:.75rem}.testimonial-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.testimonial-card{padding:30px;background:#fff;border:1px solid var(--line);border-radius:5px;display:flex;flex-direction:column}.testimonial-card-top{display:flex;justify-content:space-between;color:var(--blue);font-size:.75rem;letter-spacing:.05em}.testimonial-quote{font:4rem/1 Georgia,serif}.testimonial-card blockquote{font-size:1.65rem;line-height:1.35;letter-spacing:-.025em;margin:22px 0;font-weight:500}.testimonial-story{font-size:1rem}.testimonial-author{display:flex;gap:12px;align-items:center;margin-top:auto;padding-top:25px}.testimonial-avatar{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:var(--paper);font-size:.75rem}.testimonial-author strong,.testimonial-author div>span{display:block;font-size:.875rem}.testimonial-author div>span{color:var(--muted)}.testimonial-card small{display:block;font-size:.75rem;color:var(--muted);border-top:1px solid var(--line);padding-top:15px;margin-top:20px}.testimonial-bottom{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:35px}.testimonial-bottom p{margin:0;font-size:.875rem}
.brochure-section{display:grid;grid-template-columns:.85fr 1.15fr;gap:9%;align-items:center}.brochure-visual{padding:60px 12%;background:var(--paper);text-align:center;border-radius:6px}.brochure-visual img{width:100%;max-width:350px;margin:auto;box-shadow:16px 24px 40px #092b4026;transform:rotate(-4deg)}.brochure-visual>span{display:block;margin-top:45px;font-size:.75rem;letter-spacing:.07em;color:var(--muted)}.brochure-content>p{margin:22px 0}.brochure-content form,.contact form{padding:30px;background:var(--paper);border:1px solid var(--line);border-radius:6px}form h3{font-size:1.3rem;margin-bottom:26px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}label{display:block;font-size:.875rem;font-weight:600;margin-bottom:19px}input,select,textarea{display:block;width:100%;min-width:0;border:1px solid #c8d7e0;background:#fff;color:var(--navy);border-radius:3px;padding:12px;margin-top:8px;font-size:1rem}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#6c8391}.optional{font-size:.75rem;font-weight:400}.brochure-consent{display:flex;gap:10px;align-items:flex-start;font-size:.875rem;font-weight:400}.brochure-consent input{width:18px;height:18px;flex-shrink:0;margin:4px 0;accent-color:var(--blue)}form .button{width:100%}.form-note{font-size:.75rem;line-height:1.8;margin:16px 0 0}.form-note a{text-decoration:underline;overflow-wrap:anywhere}#brochure-status,#form-status{font-size:.875rem;margin:14px 0 0}#brochure-download{margin-top:15px}
.faq-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:9%;border-top:1px solid var(--line)}.faq-intro>p{margin:25px 0}.faq-help{border-left:2px solid var(--blue);padding-left:18px;margin-top:30px}.faq-help span,.faq-help a{display:block;font-size:.875rem}.faq-help a{color:var(--blue);font-weight:700;margin-top:6px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}summary{display:flex;align-items:center;gap:17px;padding:23px 0;cursor:pointer;list-style:none;font-size:1rem;font-weight:600;line-height:1.6}summary::-webkit-details-marker{display:none}.faq-index{font-size:.75rem;color:var(--blue);font-weight:500}.faq-toggle{margin-left:auto;flex-shrink:0;width:24px;text-align:center;font-size:1.4rem;font-weight:400}.faq-toggle:before{content:'+'}details[open] .faq-toggle:before{content:'−'}.faq-answer{padding:0 25px 22px 33px}.faq-answer p{font-size:1rem;margin:0}.faq-answer a{color:var(--blue);text-decoration:underline}
.contact{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center;background:var(--navy);color:#fff}.contact em,.contact .eyebrow{color:var(--cyan)}.contact>div>p{color:#c7dae5;margin:27px 0 32px}.contact .phone{display:block;font-size:clamp(1.5rem,2.5vw,2.2rem);letter-spacing:-.03em}.secondary-phone,.email{display:block;color:#cee3ee;margin-top:10px;font-size:1rem;overflow-wrap:anywhere}.contact form{background:#fff;color:var(--navy);padding:35px;border:0}.contact .form-note{color:var(--muted)}footer{padding:60px var(--gutter) 25px;background:#f7fafb}.footer-statement{display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid var(--line);padding-bottom:32px;margin-bottom:40px}.footer-statement>span{font-size:.75rem;letter-spacing:.1em;color:var(--muted)}.footer-statement>strong{font-size:clamp(3.5rem,9vw,8rem);line-height:1;letter-spacing:-.065em;color:#d3e1e9;font-weight:700}.footer-statement strong span{font-size:1.1rem;vertical-align:top;letter-spacing:0}.footer-top{display:grid;grid-template-columns:1.2fr 1fr 1fr .8fr;gap:35px}.footer-top h4{font-size:.75rem;color:var(--blue);letter-spacing:.08em;margin:0 0 22px}.footer-top p,.footer-top a{font-size:.875rem}.footer-top p{margin:20px 0}.footer-top a{display:block;margin:10px 0;color:#476477}.footer-top a:hover{color:var(--blue)}.footer-bottom{display:flex;justify-content:space-between;gap:25px;border-top:1px solid var(--line);margin-top:40px;padding-top:22px;color:var(--muted);font-size:.75rem}.reveal{opacity:0;transform:translateY(18px);transition:opacity .65s,transform .65s}.reveal.is-visible{opacity:1;transform:none}
@media(min-width:1800px){.hero-copy{padding-left:max(12%,calc((100vw - 1360px)/2))}.hero-scene{margin-right:max(32px,calc((100vw - 1360px)/2))}}
@media(max-width:1150px){nav{gap:16px}header{padding:17px 4%}.logo{width:145px}.hero-copy{padding-top:55px}.hero-slide{min-height:650px}.hero h1,.hero h2{font-size:3.1rem}.hero-scene{margin-right:24px}.section,.about{padding-top:80px;padding-bottom:80px}.section-head{gap:30px}.section-head>p,.testimonial-intro{max-width:310px}.products{gap:18px}.product-copy{padding:24px}.team-grid,.testimonial-cards{gap:18px}.team-grid article,.testimonial-card{padding:24px}.steps{gap:24px}.brochure-section,.faq-section,.contact{gap:5%}.footer-top{gap:22px}}
@media(max-width:1000px){nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:24px 6%;max-height:calc(100svh - 85px);overflow:auto;box-shadow:0 15px 30px #092b4012}nav.open{display:flex;flex-direction:column;align-items:stretch;gap:12px}.menu{display:block;background:#fff;color:var(--navy);border:1px solid #bcced9;padding:10px 18px;border-radius:3px;min-height:44px;font-size:.875rem}.hero h1,.hero h2{font-size:2.7rem}.hero-copy{padding-bottom:130px}.hero .actions{gap:12px}.hero-slide{min-height:680px}.section-head>p,.testimonial-intro{max-width:280px}.products{grid-template-columns:repeat(2,minmax(0,1fr))}.team-grid{grid-template-columns:1fr}.team-grid article{display:grid;grid-template-columns:80px 1fr;column-gap:20px}.team-monogram{grid-row:1/5}.team-grid article>*:not(.team-monogram){grid-column:2}.steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}.testimonial-cards{grid-template-columns:1fr}.testimonial-card blockquote{max-width:640px}.about-photo{min-height:480px}.brochure-content .form-grid{grid-template-columns:1fr}.footer-top{grid-template-columns:repeat(2,1fr);gap:35px}}
@media(max-width:760px){:root{--gutter:6%}.topline{justify-content:center;text-align:center;font-size:.75rem}.topline a{display:none}header{padding:15px 6%}.hero-slide{grid-template-columns:1fr;grid-template-rows:auto auto;min-height:0}.hero-copy{padding:44px 6% 30px;grid-row:1;grid-column:1}.hero h1,.hero h2{font-size:clamp(2.2rem,7.5vw,3.4rem);max-width:600px}.hero .eyebrow{font-size:.75rem}.hero-scene{grid-row:2;grid-column:1;height:320px;margin:0 6% 120px}.hero p{max-width:520px}.hero p br{display:none}.hero .actions{gap:24px;margin-top:25px}.hero-rail{bottom:22px;gap:15px}.hero-tabs{gap:15px}.hero-tabs button{display:block;padding:10px 0}.hero-tabs strong{display:block;font-size:.875rem;line-height:1.4;margin-top:6px}.hero-tabs button>span{font-size:.75rem}.facts{grid-template-columns:repeat(2,1fr);gap:25px}.facts>div{border:0;padding:0}.facts strong{font-size:1.8rem}.section,.about{padding-top:65px;padding-bottom:65px}.section-head{display:block;margin-bottom:30px}.section-head>p,.testimonial-intro{margin-top:22px;max-width:100%}h2{font-size:2.2rem}.references{padding-top:35px;padding-bottom:35px}.reference-logos{grid-template-columns:repeat(3,1fr);gap:8px}.reference-logos>div{height:75px;padding:12px}.filters{gap:8px}.filters button{font-size:.875rem;padding:8px 13px}.product-featured{grid-template-columns:1fr}.product-featured .product-img{aspect-ratio:1.55;min-height:0}.product-featured .product-copy{padding:28px}.product-featured h3{font-size:1.65rem}.about{grid-template-columns:1fr;gap:35px}.about-photo{height:400px;min-height:0}.team-section{padding-top:10px}.return-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.gallery-item,.gallery-item:nth-child(2){height:230px}.gallery-item:first-child{height:320px}.gallery-item>span{padding:35px 15px 15px}.gallery-item b{display:none}.brochure-section,.faq-section,.contact{grid-template-columns:1fr;gap:40px}.brochure-visual{padding:45px 20%;max-width:470px;width:100%;margin:auto}.brochure-content .form-grid{grid-template-columns:1fr 1fr}.contact form{padding:28px}.testimonial-bottom{align-items:flex-start;flex-direction:column}.footer-statement{align-items:flex-start;flex-direction:column}.footer-statement>strong{font-size:5rem}.footer-bottom{flex-direction:column;gap:8px}.faq-answer{padding-right:0}}
@media(max-width:480px){.hero-copy{padding-top:36px}.hero-scene{height:240px;margin-bottom:128px}.hero h1,.hero h2{font-size:2.3rem}.hero .actions{gap:15px}.hero .button{padding:13px 17px}.hero-tabs{gap:10px}.hero-tabs strong{font-size:.75rem}.slider-pause{width:44px}.hero-rail{gap:12px}.products{grid-template-columns:1fr}.product-copy{padding:25px}.steps{grid-template-columns:1fr;gap:28px}.steps article>span{font-size:2.1rem;margin-bottom:18px}.team-grid article{display:block;padding:26px}.team-monogram{margin-bottom:20px}.gallery-item,.gallery-item:nth-child(2){height:175px}.gallery-item:first-child{height:240px}.gallery-item>span{font-size:.75rem;padding:30px 10px 10px;letter-spacing:0}.form-grid,.brochure-content .form-grid{grid-template-columns:1fr}.brochure-content form,.contact form{padding:23px}.footer-top{grid-template-columns:1fr}.footer-top h4{margin-bottom:15px}.footer-statement>strong{font-size:4.5rem}.about-photo{height:330px}.location{left:15px;right:15px;bottom:15px;padding:18px}.facts div>span{font-size:.875rem}.testimonial-card blockquote{font-size:1.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}.hero-scene img,.product:hover,.product:hover img,.gallery-item:hover img,.button:hover{transform:none}}
/* Homepage carousel — photographic composition and stable slide sizing. */
.hero{display:grid;background:#071f30}
.hero-slide,.hero-slide.is-active{position:relative;inset:auto;grid-area:1/1;display:grid;grid-template-columns:1fr;min-height:clamp(660px,78svh,860px);opacity:0;visibility:hidden;align-self:stretch}
.hero-slide.is-active{opacity:1;visibility:visible}
.hero-scene{position:absolute;inset:0 0 0 28%;margin:0;height:auto;border-radius:0;grid-area:auto}
.hero-scene:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#071f30 0%,#071f30e6 12%,#071f3066 44%,#071f3010 78%),linear-gradient(0deg,#071f30 0%,#071f3000 40%)}
.hero-scene img{object-position:58% center;filter:saturate(.88);transform:scale(1.065);transition:transform 8s linear}
.hero-slide.is-active .hero-scene img{transform:scale(1)}
.hero-copy{grid-area:1/1;align-self:center;width:100%;max-width:none;padding:76px var(--gutter) 160px;pointer-events:none}
.hero-copy a{pointer-events:auto}
.hero h1,.hero h2{font-size:clamp(2.8rem,4.6vw,4.65rem);max-width:750px;line-height:1.08;letter-spacing:-.045em;margin:27px 0;color:#fff;text-wrap:balance}
.hero h1 em,.hero h2 em{color:#83d8f5}
.hero-copy>p{max-width:445px;color:#d5e4ed;font-size:1.0625rem;line-height:1.8;text-shadow:0 1px 10px #071f30}
.hero .eyebrow{color:#cae7f4;letter-spacing:.16em;font-size:.75rem;max-width:500px}
.hero .eyebrow:before{content:'';display:inline-block;width:25px;height:2px;background:#83d8f5;vertical-align:middle;margin-right:12px}
.hero .actions{margin-top:33px;gap:26px}
.hero .button{min-height:55px;padding:16px 26px;border-radius:3px}
.hero-copy>*{transition:transform .75s var(--ease),opacity .65s;transform:translateY(14px);opacity:0}
.hero-slide.is-active .hero-copy>*{transform:none;opacity:1}
.hero-slide.is-active .hero-copy h1,.hero-slide.is-active .hero-copy h2{transition-delay:.1s}
.hero-slide.is-active .hero-copy p{transition-delay:.17s}
.hero-slide.is-active .hero-copy .actions{transition-delay:.24s}
.hero-rail{bottom:28px;gap:35px;align-items:center}
.hero-tabs{max-width:900px;gap:28px}
.hero-tabs button{min-height:62px;border-top-color:#ffffff4d;padding:18px 0;gap:13px;color:#b7cbd8}
.hero-tabs button>span{font-variant-numeric:tabular-nums;color:#8bc5dd}
.hero-tabs strong{font-size:.875rem}
.hero-tabs i{transition:none!important;width:0!important}
.hero-tabs button.is-active i{width:100%!important}
.hero-controls{display:flex;align-items:center;gap:9px;margin-left:auto;flex-shrink:0}
.hero-control,.slider-pause{display:grid;place-items:center;margin:0;width:44px;height:44px;border:1px solid #ffffff66;background:#092b4066;backdrop-filter:blur(8px);border-radius:50%;color:white;transition:background .2s}
.hero-control:hover,.slider-pause:hover{background:#ffffff26}
.hero-control svg{width:18px;height:18px}
.hero-counter{font-size:.75rem;font-variant-numeric:tabular-nums;color:#c4dce8;min-width:43px;text-align:center}
@media(min-width:1800px){.hero-scene{margin:0}.hero-copy{padding-left:var(--gutter)}}
@media(max-width:1000px){.hero-slide,.hero-slide.is-active{min-height:700px}.hero h1,.hero h2{font-size:clamp(2.8rem,5.5vw,4rem);max-width:620px}.hero-scene{left:15%}.hero-scene:after{background:linear-gradient(90deg,#071f30f5,#071f3099 55%,#071f3033),linear-gradient(0deg,#071f30,transparent 60%)}.hero-tabs strong{font-size:.75rem}.hero-rail{gap:22px}.hero-controls{gap:7px}.hero-counter{display:none}}
@media(max-width:760px){.hero-slide,.hero-slide.is-active{min-height:0;grid-template-columns:1fr;grid-template-rows:auto 320px}.hero-copy{grid-area:1/1;padding:40px 6% 24px;align-self:start}.hero h1,.hero h2{font-size:clamp(2.4rem,7vw,3.5rem);max-width:600px;margin:24px 0 20px}.hero-copy>p{font-size:1rem;max-width:520px}.hero-scene{grid-area:2/1;position:relative;inset:auto;height:100%;margin:0;align-self:stretch}.hero-scene:after{background:linear-gradient(180deg,#071f30,transparent 32%),linear-gradient(0deg,#071f30 0%,#071f3044 36%,transparent 65%)}.hero-scene img{object-position:center 56%}.hero .actions{margin-top:24px;gap:23px}.hero-rail{bottom:20px;align-items:flex-end;gap:18px}.hero-tabs{gap:13px}.hero-tabs button{display:block;padding:12px 0 0;min-height:73px}.hero-tabs strong{font-size:.75rem;line-height:1.5;max-width:100px}.hero-tabs button>span{font-size:.75rem}.hero-control{display:none}.hero-counter{display:none}.hero-controls{align-self:center}.hero .eyebrow{letter-spacing:.08em;font-size:.75rem}.hero .button{padding:14px 20px;min-height:52px}}
@media(max-width:480px){.hero-slide,.hero-slide.is-active{grid-template-rows:auto 280px}.hero h1,.hero h2{font-size:2.4rem}.hero-copy{padding-top:34px}.hero .actions{gap:19px}.hero .button{font-size:.875rem;padding:13px 16px}.hero .hero-link{font-size:.875rem}.hero-scene{margin:0;height:100%}.hero-tabs{gap:12px}.hero-rail{gap:15px}.hero-tabs strong{font-size:.75rem}.hero .eyebrow:before{display:none}}
@media(prefers-reduced-motion:reduce){.hero-copy>*{transform:none;opacity:1}.hero-scene img{transform:none!important}}
/* Brand-blue icons for the four company highlights. */
.facts-with-icons{gap:24px;padding-top:38px;padding-bottom:38px;align-items:start}
.facts-with-icons .fact-item{display:flex;align-items:center;gap:17px;min-width:0;height:100%}
.facts-with-icons .fact-icon{display:grid;place-items:center;width:52px;height:52px;flex:0 0 52px;margin:0;background:#eef7fb;border:1px solid #deedf4;border-radius:12px;color:var(--blue);transition:background .25s,transform .25s}
.fact-icon svg{width:26px;height:26px}
.facts-with-icons .fact-copy{min-width:0}
.facts-with-icons strong{font-size:clamp(1.5rem,2.1vw,2rem);line-height:1.25;letter-spacing:-.04em}
.facts-with-icons .fact-copy>span{font-size:.875rem;line-height:1.65;margin-top:8px}
.fact-item:hover .fact-icon{background:#def1fa;transform:translateY(-3px)}
@media(max-width:1150px){.facts-with-icons{gap:20px}.facts-with-icons .fact-item{padding-left:20px;align-items:flex-start;flex-direction:column;gap:15px}.facts-with-icons .fact-item:first-child{padding-left:0}}
@media(max-width:760px){.facts-with-icons{gap:28px 22px}.facts-with-icons .fact-item{padding-left:0;flex-direction:row;gap:13px}.facts-with-icons .fact-icon{width:46px;height:46px;flex-basis:46px}.fact-icon svg{width:24px;height:24px}.facts-with-icons strong{font-size:1.5rem}}
@media(max-width:480px){.facts-with-icons .fact-item{flex-direction:column;gap:13px}.facts-with-icons .fact-copy>span{margin-top:6px}}
@media(prefers-reduced-motion:reduce){.fact-item:hover .fact-icon{transform:none}}
/* Company introduction — framed photograph and concise expertise pillars. */
.about-refined{position:relative;gap:7%;grid-template-columns:1fr 1.08fr;align-items:center;background:#fff}
.about-refined .about-photo{height:560px;min-height:0;padding:0 22px 22px 0;isolation:isolate}
.about-refined .about-photo:before{content:'';position:absolute;inset:26px 0 0 26px;border-radius:8px;background:#eaf4f8;z-index:-1}
.about-refined .about-photo>img{position:relative;width:100%;height:100%;object-fit:cover;object-position:center;border-radius:6px}
.about-refined .location{display:flex;gap:17px;align-items:center;left:0;right:22px;bottom:22px;padding:24px 26px;background:#092b40f2;color:#bcdbe9;border:0;border-radius:0 0 6px 6px}
.about-refined .location strong{font-size:1.15rem;color:#fff;letter-spacing:-.02em;margin-top:4px;line-height:1.5}
.about-refined .location div>span{font-size:.75rem;letter-spacing:.12em}
.about-pin{display:grid;place-items:center;width:43px;height:43px;flex:0 0 43px;background:#ffffff0f;border:1px solid #ffffff2b;border-radius:50%;color:#80d1ef}
.about-pin svg{width:22px;height:22px}
.about-refined .about-copy{padding:12px 0}
.about-refined .eyebrow{font-size:.75rem;letter-spacing:.15em}
.about-refined h2{font-size:clamp(2rem,3.25vw,3.2rem);line-height:1.15;letter-spacing:-.04em;margin-top:21px;text-wrap:balance}
.about-refined .about-copy>p{font-size:1rem;line-height:1.9;margin:23px 0;color:#526b7b;max-width:610px}
.about-refined .about-copy>p+p{margin-top:0}
.about-pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:30px 0;padding:25px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.about-pillars>div{display:flex;flex-direction:column;gap:12px;min-width:0}
.pillar-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:9px;background:#edf7fb;color:var(--blue)}
.pillar-icon svg{width:23px;height:23px}
.about-pillars>div>span:last-child{font-size:.875rem;line-height:1.55;color:var(--muted)}
.about-pillars strong{display:block;color:var(--navy);font-size:.875rem;font-weight:600;margin-top:3px}
.about-refined .about-cta{min-height:50px}
@media(max-width:1000px){.about-refined{gap:5%}.about-refined .about-photo{height:580px}.about-refined h2{font-size:2.25rem}.about-pillars{gap:10px}.about-refined .location{padding:20px 18px;gap:12px}}
@media(max-width:760px){.about-refined{grid-template-columns:1fr;gap:34px}.about-refined .about-photo{height:410px;max-width:620px;width:100%;padding:0 16px 16px 0}.about-refined .location{right:16px;bottom:16px;padding:22px}.about-refined h2{font-size:clamp(2rem,6vw,2.65rem)}.about-refined .about-copy{padding:0}.about-pillars{gap:20px;margin:25px 0}.about-refined .about-copy>p{max-width:none}}
@media(max-width:480px){.about-refined .about-photo{height:345px}.about-refined .location strong{font-size:1rem}.about-refined .location{padding:18px 15px}.about-refined h2{font-size:2rem}.about-pillars{gap:10px}.about-pillars>div>span:last-child,.about-pillars strong{font-size:.875rem}.about-refined .about-cta{width:100%}}
/* Leadership — aligned editorial cards with clear role hierarchy. */
.team-refined{background:#f3f7fa;padding-top:80px;padding-bottom:85px;border-top:1px solid #e3edf3;border-bottom:1px solid #e3edf3}
.team-refined .section-head{align-items:center;margin-bottom:42px}
.team-refined h2{font-size:clamp(2rem,3.3vw,3.2rem);line-height:1.17;max-width:750px}
.team-refined .section-head>p{border-left:2px solid #c4dfeC;padding-left:22px;font-size:1rem}
.team-refined .team-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;align-items:stretch}
.team-refined .team-grid article{display:flex;flex-direction:column;padding:0 30px 25px;border:1px solid #dce7ee;border-radius:10px;overflow:hidden;background:#fff;box-shadow:0 8px 28px #12374b05;transition:transform .3s,box-shadow .3s,border-color .3s}
.team-refined .team-grid article:hover{transform:translateY(-5px);border-color:#a8cedf;box-shadow:0 18px 40px #12374b10}
.team-card-head{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#eaf4f9;padding:27px 30px;margin:0 -30px 27px;border-bottom:1px solid #e0edf4}
.team-refined .team-monogram{width:72px;height:72px;border:1px solid #c5e1ef;background:#fff;color:#007fac;font-size:1.65rem;font-weight:500;letter-spacing:-.04em;margin:0;border-radius:50%}
.team-specialty-icon{display:grid;place-items:center;width:43px;height:43px;color:#3185aa;border:1px solid #c4dfeC;border-radius:10px;background:#f7fbfd}
.team-specialty-icon svg{width:23px;height:23px}
.team-refined .team-role{font-size:.75rem;line-height:1.65;letter-spacing:.06em;margin:0 0 13px;font-weight:700;color:#00739c;min-height:2.5rem;display:flex;align-items:center}
.team-refined .team-grid h3{font-size:clamp(1.2rem,1.7vw,1.6rem);font-weight:650;line-height:1.3;letter-spacing:-.035em;margin:0 0 17px;color:#092b40;overflow-wrap:anywhere}
.team-refined .team-grid p{font-size:1rem;line-height:1.85;color:#526b7b;margin:0 0 28px}
.team-refined .team-contacts{margin-top:auto;display:flex;flex-wrap:wrap;gap:7px;padding-top:22px;border-top:1px solid #e5edf2}
.team-refined .team-contacts button{font-size:.75rem;gap:6px;min-height:35px;padding:7px 9px;border-color:#e4ebf0;border-radius:5px;background:#f8fafb;color:#627a88;opacity:1;cursor:not-allowed}
.team-refined .team-contacts svg{width:14px;height:14px;flex-shrink:0}
.team-refined .team-contact-note{font-size:.75rem;line-height:1.6;margin-top:13px;color:#657e8d}
@media(max-width:1150px){.team-refined .team-grid{gap:18px}.team-refined .team-grid article{padding:0 23px 24px}.team-card-head{margin:0 -23px 23px;padding:24px 23px}.team-refined .team-grid h3{font-size:1.3rem}}
@media(max-width:850px){.team-refined .team-grid{grid-template-columns:1fr;gap:24px}.team-refined .team-grid article{display:grid;grid-template-columns:120px minmax(0,1fr);column-gap:28px;padding:28px}.team-refined .team-card-head{grid-column:1;grid-row:1/6;display:flex;flex-direction:column;justify-content:flex-start;gap:22px;margin:0;padding:22px 10px;border:1px solid #deedf4;border-radius:8px;height:100%}.team-refined .team-grid article>*:not(.team-card-head){grid-column:2}.team-refined .team-role{min-height:0;margin-bottom:10px}.team-refined .team-grid h3{font-size:1.5rem}.team-refined .team-grid p{margin-bottom:20px}.team-refined .team-contacts{margin-top:0}.team-refined .section-head>p{margin-top:22px}}
@media(max-width:560px){.team-refined{padding-top:60px;padding-bottom:60px}.team-refined .team-grid article{display:flex;padding:0 26px 25px}.team-refined .team-card-head{flex-direction:row;justify-content:space-between;margin:0 -26px 25px;padding:25px 26px;border-radius:0;border:0;border-bottom:1px solid #deedf4;height:auto}.team-refined .team-role{margin-bottom:13px}.team-refined .team-grid h3{font-size:1.5rem}.team-refined .section-head>p{border-left:0;padding-left:0}.team-refined .team-contacts{gap:8px}}
@media(prefers-reduced-motion:reduce){.team-refined .team-grid article:hover{transform:none}}
/* Four stages — distinct cards with a continuous progression. */
#expertise.expertise-refined{background:#092b40;padding-top:90px;padding-bottom:90px}
.expertise-refined .section-head{align-items:center;margin-bottom:48px;gap:50px}
.expertise-refined h2{font-size:clamp(2rem,3.4vw,3.3rem);line-height:1.16}
.expertise-refined .section-head>p{font-size:1rem;line-height:1.85;max-width:360px;border-left:1px solid #426375;padding-left:24px}
.expertise-refined .steps{position:relative;gap:20px;margin-top:0;align-items:stretch}
.expertise-refined .steps:before{content:'';position:absolute;left:30px;right:30px;top:63px;height:1px;background:#44758b}
.expertise-refined .steps article{position:relative;min-width:0;background:#10364c;border:1px solid #325369;border-radius:9px;padding:30px 26px;transition:transform .3s,border-color .3s,background .3s}
.expertise-refined .steps article:hover{transform:translateY(-5px);border-color:#74bddb;background:#153e54}
.step-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:29px}
.step-symbol{display:grid;place-items:center;width:58px;height:58px;flex-shrink:0;background:#1a485f;border:1px solid #3a6b83;border-radius:13px;color:#8fddf6}
.step-symbol svg{width:29px;height:29px}
.step-number{font-size:1rem;color:#a2cadc;font-variant-numeric:tabular-nums;letter-spacing:.08em;font-weight:500}
.expertise-refined .steps h3{font-size:1.125rem;line-height:1.5;font-weight:600;letter-spacing:-.02em;color:#fff;margin:0 0 15px;min-height:3.375rem}
#expertise.expertise-refined .steps p{font-size:1rem;line-height:1.85;color:#c1d6e2;margin:0}
@media(max-width:1150px){.expertise-refined .steps{gap:16px}.expertise-refined .steps article{padding:26px 22px}.step-symbol{width:52px;height:52px;border-radius:11px}.step-heading{margin-bottom:25px}}
@media(max-width:1000px){.expertise-refined .steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.expertise-refined .steps:before{display:none}.expertise-refined .steps h3{min-height:0}.expertise-refined .steps article{padding:30px}.expertise-refined .section-head{gap:30px}}
@media(max-width:760px){#expertise.expertise-refined{padding-top:65px;padding-bottom:65px}.expertise-refined .section-head{margin-bottom:32px}.expertise-refined .section-head>p{border:0;padding-left:0;max-width:100%;margin-top:22px}.expertise-refined .steps article{padding:25px}.expertise-refined .steps h3{min-height:3.375rem}.step-heading{margin-bottom:23px}}
@media(max-width:560px){.expertise-refined .steps{grid-template-columns:1fr;gap:16px}.expertise-refined .steps article{padding:27px}.expertise-refined .steps h3{min-height:0;font-size:1.2rem}.step-heading{margin-bottom:22px}.step-symbol{width:54px;height:54px}}
@media(prefers-reduced-motion:reduce){.expertise-refined .steps article:hover{transform:none}}
/* Contact — West Park inspired composition, Alimad identity. */
.contact-editorial{background:#edf2f5;color:var(--navy);grid-template-columns:.95fr 1.15fr;gap:7%;align-items:center;padding-top:85px;padding-bottom:85px}
.contact-editorial .eyebrow{color:#587383;letter-spacing:.13em;font-size:.75rem}
.contact-editorial h2{font-size:clamp(2.2rem,3.7vw,3.6rem);line-height:1.14;margin-top:29px;letter-spacing:-.045em}
.contact-editorial em{color:var(--blue)}
.contact-editorial .contact-intro>p{color:#526b7b;font-size:1rem;line-height:1.85;margin:24px 0 33px;max-width:530px}
.contact-journey{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;list-style:none;padding:0;margin:35px 0 30px}
.contact-journey li{position:relative;font-size:.875rem;line-height:1.6;color:#173d53}
.contact-journey li>span{display:block;color:#007fac;font-size:.75rem;margin-bottom:8px;font-variant-numeric:tabular-nums}
.contact-journey li:not(:last-child):after{content:'';position:absolute;height:1px;left:34px;right:-10px;top:9px;background:#b7cdd8}
.contact-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.contact-card{display:flex;align-items:center;gap:14px;padding:21px 18px;background:#ffffff99;border:1px solid #cfdee7;min-height:93px;transition:background .2s,border-color .2s}
.contact-card:hover{background:#fff;border-color:#7fb3cc}
.contact-card>svg{width:23px;height:23px;flex:0 0 23px;color:var(--blue)}
.contact-card>span{min-width:0}
.contact-card small{display:block;font-size:.75rem;line-height:1.5;color:#587383;margin-bottom:5px;letter-spacing:.04em}
.contact-card strong{display:block;font-size:.875rem;font-weight:600;line-height:1.65;color:#092b40;overflow-wrap:anywhere}
.contact-editorial form{padding:39px;background:#fff;border:1px solid #e0e8ed;border-radius:3px;box-shadow:0 18px 50px #15384e0a}
.contact-form-heading{padding-bottom:25px;border-bottom:1px solid #d9e3e9;margin-bottom:27px}
.contact-editorial .contact-form-heading .eyebrow{font-size:.75rem;color:#68808e;font-weight:500}
.contact-editorial form h3{font-size:1.6rem;line-height:1.3;letter-spacing:-.035em;font-weight:500;margin:9px 0 0}
.contact-editorial label{font-size:.875rem;font-weight:600;margin-bottom:20px;color:#193c51}
.contact-editorial .optional{font-size:.75rem;color:#6b7e89;font-weight:400}
.contact-editorial input,.contact-editorial select,.contact-editorial textarea{background:#f7f9fa;border-color:#d4dfe6;padding:13px 14px;border-radius:2px;font-size:1rem;min-height:50px}
.contact-editorial textarea{min-height:122px}
.contact-editorial .button{min-height:53px;border-radius:2px;font-weight:600}
.contact-editorial .form-note{font-size:.75rem;color:#5c7483;line-height:1.8;margin-top:17px}
@media(max-width:1150px){.contact-editorial{gap:4%;grid-template-columns:1fr 1.1fr}.contact-editorial form{padding:29px}.contact-cards{grid-template-columns:1fr}.contact-card{min-height:75px;padding:15px 18px}.contact-editorial h2{font-size:2.7rem}}
@media(max-width:850px){.contact-editorial{grid-template-columns:1fr;gap:40px;padding-top:65px;padding-bottom:65px}.contact-editorial h2{font-size:clamp(2.2rem,5.5vw,3.2rem);max-width:650px}.contact-editorial .contact-intro>p{max-width:650px}.contact-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-journey{max-width:620px}.contact-editorial form{padding:33px}.contact-card{min-height:85px}}
@media(max-width:480px){.contact-editorial{gap:30px}.contact-editorial h2{font-size:2.2rem}.contact-cards{grid-template-columns:1fr}.contact-editorial form{padding:24px}.contact-editorial .form-grid{grid-template-columns:1fr}.contact-editorial form h3{font-size:1.4rem}.contact-journey{gap:16px}.contact-journey li{font-size:.875rem}.contact-form-heading{padding-bottom:21px;margin-bottom:23px}}
/* Client voices — editorial quotes, clear attribution and restrained contrast. */
.testimonials-refined{background:#f1f6f9;padding-top:90px;padding-bottom:85px;border-top:1px solid #e2ebf1}
.testimonials-refined .section-head{align-items:center;margin-bottom:45px;gap:45px}
.testimonials-refined h2{font-size:clamp(2rem,3.5vw,3.3rem);line-height:1.16}
.testimonials-refined .testimonial-intro{max-width:350px}
.testimonials-refined .testimonial-intro p{font-size:1rem;line-height:1.85;margin-bottom:15px}
.testimonials-refined .testimonial-demo-label{font-size:.75rem;line-height:1.7;color:#526e7f;border:1px solid #cddde7;background:#e9f1f6;border-radius:4px;padding:7px 11px}
.testimonials-refined .testimonial-cards{grid-template-columns:1.15fr 1fr 1fr;gap:22px;align-items:stretch}
.testimonials-refined .testimonial-card{position:relative;background:white;padding:34px 30px 27px;border:1px solid #dce7ee;border-radius:9px;box-shadow:0 8px 25px #173f5305;transition:transform .3s,box-shadow .3s}
.testimonials-refined .testimonial-card:hover{transform:translateY(-5px);box-shadow:0 18px 38px #173f5310}
.testimonials-refined .testimonial-card-top{display:flex;align-items:center;gap:12px;font-size:.75rem;line-height:1.7;letter-spacing:.06em;color:#007fac;min-height:55px}
.testimonials-refined .testimonial-quote{font-family:Georgia,serif;font-size:5rem;line-height:.7;color:#b6dceC;font-weight:400;margin-top:20px}
.testimonials-refined .testimonial-card blockquote{font-size:clamp(1.5rem,2vw,1.9rem);line-height:1.4;letter-spacing:-.035em;font-weight:500;margin:27px 0 24px;color:#12364b}
.testimonials-refined .testimonial-card blockquote em{color:#007fac}
.testimonials-refined .testimonial-story{font-size:1rem;line-height:1.85;color:#566f7e;margin-bottom:28px}
.testimonials-refined .testimonial-author{border-top:1px solid #dfe9ef;padding-top:23px;gap:13px}
.testimonials-refined .testimonial-avatar{width:45px;height:45px;background:#edf6fa;border:1px solid #d4e8f2;color:#007fac;font-size:.875rem;flex-shrink:0}
.testimonials-refined .testimonial-author strong{font-weight:600;font-size:.875rem;color:#173c51;margin-bottom:3px}
.testimonials-refined .testimonial-author div>span{font-size:.875rem;line-height:1.6;color:#607987}
.testimonials-refined .testimonial-card small{border:0;padding:0;margin-top:19px;color:#667c89;font-size:.75rem;line-height:1.65}
.testimonials-refined .testimonial-lead{background:#0c3046;border-color:#0c3046}
.testimonials-refined .testimonial-lead .testimonial-card-top{color:#9fdaee}
.testimonials-refined .testimonial-lead .testimonial-quote{color:#5ca5c2}
.testimonials-refined .testimonial-lead blockquote{color:#fff}
.testimonials-refined .testimonial-lead blockquote em{color:#83d8f5}
.testimonials-refined .testimonial-lead .testimonial-story{color:#d0e0e9}
.testimonials-refined .testimonial-lead .testimonial-author{border-color:#36596d}
.testimonials-refined .testimonial-lead .testimonial-avatar{background:#204a61;border-color:#426d83;color:#b5e6f8}
.testimonials-refined .testimonial-lead .testimonial-author strong{color:#fff}
.testimonials-refined .testimonial-lead .testimonial-author div>span,.testimonials-refined .testimonial-lead small{color:#b9d1de}
.testimonials-refined .testimonial-bottom{margin-top:32px;padding:25px 0 0;border-top:1px solid #d4e2eb;gap:30px}
.testimonials-refined .testimonial-bottom p{font-size:.875rem;line-height:1.85;color:#526e80}
.testimonials-refined .testimonial-bottom strong{font-weight:600;color:#163d53}
.testimonials-refined .testimonial-bottom .button{background:#fff;border-color:#b9cfdb;color:#156a91;font-size:.875rem;min-height:48px;border-radius:4px}
.testimonials-refined .testimonial-bottom .button:hover{background:#007fac;color:white;border-color:#007fac}
@media(max-width:1150px){.testimonials-refined .testimonial-cards{gap:17px;grid-template-columns:repeat(3,minmax(0,1fr))}.testimonials-refined .testimonial-card{padding:27px 23px}.testimonials-refined .testimonial-card blockquote{font-size:1.6rem}.testimonials-refined .testimonial-card-top{letter-spacing:0}}
@media(max-width:950px){.testimonials-refined .testimonial-cards{grid-template-columns:1fr 1fr;gap:20px}.testimonials-refined .testimonial-lead{grid-column:1/-1}.testimonials-refined .testimonial-lead blockquote{font-size:2rem;max-width:750px}.testimonials-refined .testimonial-lead .testimonial-story{max-width:720px}.testimonials-refined .testimonial-card{padding:30px}.testimonials-refined .testimonial-intro{max-width:290px}}
@media(max-width:760px){.testimonials-refined{padding-top:65px;padding-bottom:65px}.testimonials-refined .section-head{margin-bottom:30px}.testimonials-refined .testimonial-intro{max-width:none}.testimonials-refined .testimonial-cards{grid-template-columns:1fr}.testimonials-refined .testimonial-lead{grid-column:auto}.testimonials-refined .testimonial-card blockquote,.testimonials-refined .testimonial-lead blockquote{font-size:1.8rem}.testimonials-refined .testimonial-bottom{align-items:flex-start;flex-direction:column;gap:20px}}
@media(max-width:480px){.testimonials-refined .testimonial-card{padding:27px 25px}.testimonials-refined .testimonial-card blockquote,.testimonials-refined .testimonial-lead blockquote{font-size:1.6rem}.testimonials-refined .testimonial-bottom .button{width:100%}}
@media(prefers-reduced-motion:reduce){.testimonials-refined .testimonial-card:hover{transform:none}}
.quote-progress{display:grid;grid-template-columns:repeat(3,1fr);list-style:none;padding:0;margin:0 0 20px;gap:12px}.quote-progress li{display:flex;align-items:center;gap:8px;font-size:.875rem;color:#647e8e;line-height:1.5}.quote-progress li>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#edf2f5;border:1px solid #d5e1e8;font-size:.75rem;flex-shrink:0}.quote-progress li[aria-current]{color:#007fac;font-weight:700}.quote-progress li[aria-current]>span,.quote-progress li.complete>span{background:#007fac;border-color:#007fac;color:white}.quote-step-status{font-size:.75rem;color:#5e7887;margin:0 0 20px}.quote-step{border:0;padding:0;margin:0;min-width:0}.quote-step legend{font-size:1.2rem;font-weight:600;color:#153c51;margin-bottom:9px;line-height:1.5;letter-spacing:-.025em}.quote-help{font-size:.875rem;line-height:1.75;color:#627988;margin:0 0 22px}.quote-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 25px}.quote-option{display:flex;align-items:center;gap:10px;padding:15px 13px;background:#f8fafc;border:1px solid #d7e4ec;color:#193d52;border-radius:4px;min-height:72px;text-align:left;line-height:1.5}.quote-option>span{font-size:.75rem;color:#4383a1;flex-shrink:0}.quote-option strong{font-size:.875rem;font-weight:500}.quote-option:hover{border-color:#7ab4d0}.quote-option[aria-pressed=true]{background:#eaf6fc;border-color:#0086b5;box-shadow:inset 3px 0 #0086b5;color:#006b93}.quote-navigation{display:flex;gap:12px;margin-top:12px}.quote-navigation .button{flex:1;width:auto}.quote-back{padding:12px 17px;border:1px solid #c6d9e3;background:#fff;color:#315c73;border-radius:3px;font-size:.875rem}.quote-summary{background:#eef6fa;border-left:2px solid #007fac;padding:12px 16px;font-size:.875rem;margin:0 0 25px;color:#214b62;overflow-wrap:anywhere}@media(max-width:480px){.quote-progress{gap:7px}.quote-progress li{flex-direction:column;align-items:flex-start;gap:6px;font-size:.75rem}.quote-options{grid-template-columns:1fr}.quote-option{min-height:57px}.quote-navigation{flex-wrap:wrap}.quote-navigation .quote-submit{min-width:180px}.quote-back{padding:12px}}
.quote-page{background:#f0f5f8}.dedicated-quote{padding:65px 6% 85px}.devis-intro{text-align:center;max-width:860px;margin:0 auto 38px}.devis-back{display:inline-block;font-size:.875rem;color:#557080;margin-bottom:27px;border-bottom:1px solid #b9ceda}.devis-intro h1{font-size:clamp(2.1rem,4vw,3.7rem);line-height:1.15;margin:22px 0}.devis-intro p{font-size:1rem;margin:20px 0 0}.dedicated-quote #quote{max-width:800px;margin:auto;background:#fff;border:1px solid #dce7ee;border-radius:8px;padding:42px;box-shadow:0 20px 55px #163e530a}.dedicated-quote .contact-form-heading h3{font-size:1.6rem;font-weight:500;line-height:1.3;margin:10px 0 0}.dedicated-quote .contact-form-heading .eyebrow{color:#577888}.dedicated-quote .quote-progress{margin-bottom:25px}.dedicated-quote .quote-options{gap:13px}.dedicated-quote .quote-option{min-height:80px}.dedicated-quote input,.dedicated-quote select,.dedicated-quote textarea{background:#f7fafc}.dedicated-quote .quote-step legend{font-size:1.3rem}.dedicated-quote .quote-navigation{margin-top:25px}.dedicated-quote .form-note{margin-top:20px}@media(max-width:560px){.dedicated-quote{padding:35px 5% 55px}.dedicated-quote #quote{padding:24px}.devis-intro{margin-bottom:27px}.devis-intro h1{font-size:2.1rem}.dedicated-quote .quote-options{grid-template-columns:1fr}.dedicated-quote .quote-option{min-height:60px}.quote-page .form-grid{grid-template-columns:1fr}}
/* Company signature: balanced image, editorial copy and distinct expertise cards. */
.about-signature-layout{grid-template-columns:1fr 1.05fr;gap:6%;background:#f7fafc;padding-top:90px;padding-bottom:90px;border-top:1px solid #e4edf3;border-bottom:1px solid #e4edf3}
.about-signature-layout .about-photo{height:100%;min-height:590px;padding:0;align-self:stretch}
.about-signature-layout .about-photo:before{display:none}
.about-signature-layout .about-photo>img{position:absolute;inset:0;border-radius:10px;object-position:48% center}
.about-signature-layout .location{bottom:22px;left:22px;right:22px;border-radius:7px;background:#092b40f2;border:1px solid #ffffff26;padding:22px;box-shadow:0 8px 25px #071c3020}
.about-signature-layout .about-copy{padding:12px 0}
.about-signature-layout .eyebrow{display:flex;align-items:center;gap:12px;letter-spacing:.14em;color:#007fac}
.about-signature-layout .eyebrow:before{content:'';width:28px;height:2px;background:#008aba;flex-shrink:0}
.about-signature-layout h2{font-size:clamp(2.1rem,3.35vw,3.4rem);line-height:1.13;letter-spacing:-.045em;margin:22px 0 25px;text-wrap:balance}
.about-signature-layout h2 em{color:#007fac}
.about-signature-layout .about-copy>p{font-size:1rem;line-height:1.85;margin:0 0 18px;max-width:570px;color:#526b7b}
.about-signature-layout .about-copy>p+p{color:#234e65;border-left:2px solid #8bc9e2;padding-left:17px;font-size:.9375rem;line-height:1.8;margin-top:20px}
.about-signature-layout .about-pillars{border:0;padding:0;margin:29px 0 28px;gap:12px}
.about-signature-layout .about-pillars>div{padding:20px 17px;background:#fff;border:1px solid #dce9f1;border-radius:7px;gap:16px;box-shadow:0 5px 18px #163d5004;transition:transform .25s,border-color .25s}
.about-signature-layout .about-pillars>div:hover{transform:translateY(-4px);border-color:#8bbfd6}
.about-signature-layout .pillar-icon{width:46px;height:46px;border-radius:10px;background:#ecf7fc;color:#0083b3}
.about-signature-layout .pillar-icon svg{width:26px;height:26px}
.about-signature-layout .about-pillars>div>span:last-child{font-size:.875rem;color:#5a7585;line-height:1.55}
.about-signature-layout .about-pillars strong{font-size:.9375rem;font-weight:600;color:#153c52;margin-top:5px}
.about-signature-layout .about-cta{min-height:52px;padding:15px 25px;border-radius:4px}
@media(max-width:1150px){.about-signature-layout{gap:5%}.about-signature-layout .about-photo{height:100%;min-height:580px}.about-signature-layout h2{font-size:2.55rem}.about-signature-layout .about-pillars{gap:9px}.about-signature-layout .about-pillars>div{padding:17px 12px}.about-signature-layout .location{left:16px;right:16px;bottom:16px;padding:18px}}
@media(max-width:850px){.about-signature-layout{grid-template-columns:1fr;gap:35px;padding-top:65px;padding-bottom:65px}.about-signature-layout .about-photo{height:440px;min-height:0;max-width:none}.about-signature-layout .about-photo>img{object-position:center 42%}.about-signature-layout .about-copy{padding:0}.about-signature-layout h2{font-size:clamp(2.2rem,5.5vw,3rem)}.about-signature-layout .about-copy>p{max-width:100%}.about-signature-layout .about-pillars{gap:15px}.about-signature-layout .about-pillars>div{padding:22px}.about-signature-layout h2 em br{display:none}}
@media(max-width:480px){.about-signature-layout .about-photo{height:330px}.about-signature-layout h2{font-size:2.1rem}.about-signature-layout .location{left:12px;right:12px;bottom:12px;padding:15px;gap:12px}.about-signature-layout .location strong{font-size:1rem}.about-signature-layout .about-pillars{grid-template-columns:1fr;gap:10px}.about-signature-layout .about-pillars>div{flex-direction:row;align-items:center;gap:15px;padding:15px 18px}.about-signature-layout .pillar-icon{flex:0 0 44px;width:44px;height:44px}.about-signature-layout .about-pillars strong{margin-top:2px}.about-signature-layout .about-cta{width:100%}}
@media(prefers-reduced-motion:reduce){.about-signature-layout .about-pillars>div:hover{transform:none}}

/* Uniform realization gallery matching the photographic card reference. */
#realisations .return-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
#realisations .gallery-item,#realisations .gallery-item:first-child,#realisations .gallery-item:nth-child(2){grid-column:auto;height:auto;aspect-ratio:1.58;border-radius:4px}
#realisations .gallery-item:focus-visible{outline:3px solid #007fac;outline-offset:4px}
@media(max-width:760px){#realisations .return-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}
@media(max-width:480px){#realisations .return-gallery{grid-template-columns:1fr;gap:16px}#realisations .gallery-item b{display:block}}

/* Testimonials: a dark editorial setting with three balanced quotation cards. */
.testimonials-premium{background:radial-gradient(ellipse at 95% 0,#174b64 0,transparent 55%),#092b40;color:#fff;border:0;padding-top:95px;padding-bottom:75px}
.testimonials-premium .section-head{align-items:flex-end;gap:45px;margin-bottom:42px}
.testimonials-premium .eyebrow{color:#90d6ed;letter-spacing:.15em}
.testimonials-premium h2{color:white;font-size:clamp(2.2rem,3.7vw,3.6rem);line-height:1.15;letter-spacing:-.045em;margin-top:18px}
.testimonials-premium h2 em{color:#91d9ef}
.testimonials-premium .testimonial-intro p{color:#c7dce7;font-size:.9375rem;line-height:1.85}
.testimonials-premium .testimonial-demo-label{background:#173d51;border:1px solid #3e6276;color:#c4d9e4;font-size:.6875rem;padding:7px 10px}
.testimonials-premium .testimonial-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.testimonials-premium .testimonial-card{grid-column:auto;background:#fff;border:1px solid #fff;border-radius:12px;padding:30px 29px 25px;box-shadow:0 14px 35px #00162326;overflow:hidden}
.testimonials-premium .testimonial-card:before{content:'';position:absolute;top:0;left:29px;width:44px;height:3px;background:#0098c5}
.testimonials-premium .testimonial-card:hover{transform:translateY(-5px);box-shadow:0 22px 40px #00162340}
.testimonials-premium .testimonial-card-top{color:#4e7286;font-size:.6875rem;letter-spacing:.075em;min-height:48px}
.testimonials-premium .testimonial-quote{color:#b4d8e6;font-size:5.5rem;margin-top:18px}
.testimonials-premium .testimonial-card blockquote{color:#153a50;font-size:clamp(1.45rem,1.85vw,1.8rem);line-height:1.4;letter-spacing:-.035em;min-height:4.2em;margin:23px 0 18px}
.testimonials-premium .testimonial-card blockquote em{color:#007fa7}
.testimonials-premium .testimonial-story{color:#5c7280;font-size:.9375rem;line-height:1.85;margin:0 0 30px}
.testimonials-premium .testimonial-author{border-color:#e0eaf0;padding-top:22px;gap:13px}
.testimonials-premium .testimonial-avatar{background:#edf6fa;border:1px solid #d5e7ef;color:#007fa7;width:46px;height:46px;border-radius:12px;font-weight:600}
.testimonials-premium .testimonial-author strong{color:#153a50;font-size:.875rem}
.testimonials-premium .testimonial-author div>span{color:#607987;font-size:.75rem}
.testimonials-premium .testimonial-card small{color:#6a7e89;font-size:.6875rem;margin-top:18px}
.testimonials-premium .testimonial-bottom{border-color:#35576b;margin-top:35px;padding-top:27px}
.testimonials-premium .testimonial-bottom p{color:#b8d1de;font-size:.9375rem}
.testimonials-premium .testimonial-bottom strong{color:#fff;font-weight:500}
.testimonials-premium .testimonial-bottom .button{background:transparent;border:1px solid #7094a8;color:#fff;border-radius:5px;padding:14px 23px}
.testimonials-premium .testimonial-bottom .button:hover{background:#fff;border-color:#fff;color:#092b40}
@media(max-width:1050px){.testimonials-premium .testimonial-card{padding:26px 22px}.testimonials-premium .testimonial-cards{gap:14px}.testimonials-premium .testimonial-card blockquote{font-size:1.45rem}.testimonials-premium .section-head{gap:25px}}
@media(max-width:800px){.testimonials-premium{padding-top:65px;padding-bottom:55px}.testimonials-premium .section-head{display:block}.testimonials-premium .testimonial-intro{max-width:none;margin-top:22px}.testimonials-premium .testimonial-cards{grid-template-columns:1fr;gap:18px}.testimonials-premium .testimonial-card{padding:28px}.testimonials-premium .testimonial-card blockquote{min-height:0;font-size:1.75rem}.testimonials-premium .testimonial-bottom{flex-direction:column;align-items:flex-start;gap:22px}}
@media(prefers-reduced-motion:reduce){.testimonials-premium .testimonial-card:hover{transform:none}}

/* Shared footer and accessible quick contact menu. */
.footer-premium{background:#f4f8fb;padding-top:65px;padding-bottom:27px;border-top:1px solid #dce7ed}
.footer-premium .footer-invite{display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid #d4e2ea;padding-bottom:36px;margin-bottom:44px}
.footer-invite h2{font-size:clamp(1.65rem,2.5vw,2.5rem);line-height:1.25;margin:15px 0 0;letter-spacing:-.04em}.footer-invite h2 em{color:#007fac}.footer-invite .button{flex-shrink:0;border-radius:5px}
.footer-premium .footer-top{grid-template-columns:1.25fr .95fr .8fr 1.2fr;gap:35px;align-items:start}.footer-premium .footer-top h4{font-size:.6875rem;letter-spacing:.09em;margin:0 0 22px;color:#007fac}.footer-premium .footer-brand>a{margin:0}.footer-premium .footer-brand .logo{width:175px;max-width:100%;height:auto}.footer-premium .footer-brand p{max-width:260px;line-height:1.85;margin:22px 0 17px}.footer-origin{font-size:.6rem;letter-spacing:.07em;color:#5d7d8e}.footer-premium .footer-top a{font-size:.8125rem;line-height:1.7;color:#486779;margin:0 0 12px}.footer-premium .footer-top a:hover{color:#007fac}.footer-premium .footer-top p{font-size:.8125rem;color:#5d7584;line-height:1.85}.footer-premium .footer-contact .footer-phone{font-size:1.4rem;font-weight:600;color:#123b52;letter-spacing:-.025em;margin-top:-5px}.footer-contact a{overflow-wrap:anywhere}.footer-premium .footer-contact p{margin:20px 0 10px}.footer-premium .footer-map{text-decoration:underline;text-underline-offset:4px}.footer-premium .footer-bottom{margin-top:40px;padding-right:175px;font-size:.6875rem;line-height:1.7}
.contact-float{position:fixed;right:26px;bottom:24px;z-index:90;display:flex;align-items:flex-end;flex-direction:column;gap:13px}.contact-float-toggle{display:flex;align-items:center;gap:16px;border:1px solid #e6edf0;padding:8px 8px 8px 19px;background:#fff;color:#173b4f;box-shadow:0 6px 28px #092b4026;font:500 .8125rem Manrope,sans-serif;cursor:pointer}.contact-float i{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#007fac;color:white;font-style:normal;flex-shrink:0}.contact-float svg{width:23px;height:23px;display:block}.contact-float [hidden]{display:none!important}.contact-float-actions{display:flex;flex-direction:column;align-items:flex-end;gap:12px;padding-right:9px}.contact-float-actions a{display:flex;align-items:center;gap:11px;text-decoration:none}.contact-float-actions a>span{background:#173b4f;color:#fff;padding:7px 11px;font-size:.75rem;box-shadow:0 3px 14px #092b4020}.contact-float-actions i{box-shadow:0 5px 20px #092b4028;transition:transform .2s}.contact-float-actions a:hover i{transform:scale(1.08)}.contact-float .quick-whatsapp i{background:#20c768}.contact-float .quick-call i{background:#00a786}.contact-float .quick-mail i{background:#007fac}.contact-float-toggle[aria-expanded=true] i{background:#173b4f}.contact-float a:focus-visible,.contact-float button:focus-visible{outline:3px solid #007fac;outline-offset:4px}
@media(max-width:1050px){.footer-premium .footer-top{grid-template-columns:1fr 1fr;gap:35px 45px}}
@media(max-width:600px){.footer-premium{padding-top:40px;padding-bottom:105px}.footer-premium .footer-invite{align-items:flex-start;flex-direction:column;gap:22px}.footer-premium .footer-top{grid-template-columns:1fr 1fr;gap:32px 20px}.footer-brand,.footer-contact{grid-column:1/-1}.footer-premium .footer-bottom{padding-right:0}.footer-premium .footer-brand p{max-width:330px}.contact-float{right:14px;bottom:max(14px,env(safe-area-inset-bottom));gap:10px}.contact-float-toggle{padding:7px 7px 7px 14px;gap:11px}.contact-float i{width:42px;height:42px}.contact-float-actions{padding-right:8px}}
@media(prefers-reduced-motion:reduce){.contact-float-actions i{transition:none}}

/* Refined shared navigation. */
.header-premium{padding:16px var(--gutter);gap:25px;background:#ffffffed;border-bottom:1px solid #dce7ef;min-height:88px}.header-premium>a{flex-shrink:0}.header-premium .logo{width:158px}.header-premium nav{margin-left:auto;gap:23px;font-size:.8125rem}.header-premium nav>a:not(.button){position:relative;font-weight:500}.header-premium nav>a:not(.button):after{content:'';position:absolute;left:0;right:0;bottom:0;height:2px;background:#007fac;transform:scaleX(0);transform-origin:left;transition:transform .2s}.header-premium nav>a:hover:after{transform:scaleX(1)}.header-premium nav .button{font-size:.75rem;min-height:44px;border-radius:5px;padding:12px 18px}.header-controls{display:flex;align-items:center;gap:10px;order:3}.theme-toggle{display:flex;align-items:center;justify-content:center;gap:7px;border:1px solid #d6e3eb;background:#f4f8fb;border-radius:6px;color:#214f67;min-height:42px;padding:9px 11px;font-size:.75rem}.theme-toggle svg{width:18px;height:18px}.theme-sun{display:none}.theme-toggle:hover{border-color:#007fac;background:#eaf5fa}.header-premium.is-scrolled{box-shadow:0 8px 28px #092b4012}.topline{font-size:.6875rem;padding-top:7px;padding-bottom:7px}
/* Correct all inherited lead-card colors and keep quotations aligned. */
#temoignages .testimonial-card{min-width:0;display:flex;flex-direction:column}
#temoignages .testimonial-card-top{align-items:flex-start;min-height:60px;color:#4e7286}
#temoignages .testimonial-card-top>span:first-child{padding-top:10px;max-width:calc(100% - 50px)}
#temoignages .testimonial-quote{color:#b4d8e6;margin-top:15px;flex-shrink:0}
#temoignages .testimonial-card blockquote{color:#153a50;min-height:4.2em;font-size:clamp(1.4rem,1.75vw,1.7rem)}
#temoignages .testimonial-card blockquote em{color:#007fa7}
#temoignages .testimonial-story{color:#5c7280;font-size:.9375rem}
#temoignages .testimonial-author{border-color:#e0eaf0}
#temoignages .testimonial-avatar{background:#edf6fa;border-color:#d5e7ef;color:#007fa7}
#temoignages .testimonial-author strong{color:#153a50}
#temoignages .testimonial-author div>span,#temoignages .testimonial-card small{color:#607987}
@media(max-width:1200px){.header-premium{padding-left:4%;padding-right:4%;gap:17px}.header-premium nav{gap:16px}.header-premium .logo{width:140px}.theme-label{display:none}}
@media(max-width:1000px){.header-premium{min-height:78px;padding:14px 6%}.header-premium nav{margin:0;gap:10px}.header-controls{margin-left:auto}.header-premium .menu{border-radius:6px;min-height:42px;padding:8px 14px;font-size:.75rem}.header-premium nav.open>a{padding:12px 0}.header-premium nav.open>.button{padding:14px}.theme-label{display:inline}}
@media(max-width:800px){#temoignages .testimonial-card blockquote{min-height:0;font-size:1.7rem}#temoignages .testimonial-card-top{min-height:48px}}
/* A persistent night palette; photographs and brand artwork keep their colors. */
html[data-theme=dark]{color-scheme:dark;--navy:#e2edf5;--muted:#a6bccb;--paper:#102c3e;--line:#2a4558;--blue:#67c9ed}
html[data-theme=dark] body{background:#091c29;color:#e2edf5}
html[data-theme=dark] .theme-moon{display:none}html[data-theme=dark] .theme-sun{display:block}
html[data-theme=dark] .header-premium,html[data-theme=dark] nav{background:#0e2535ed;border-color:#294657;color:#dceaf2}
html[data-theme=dark] .header-premium .logo,html[data-theme=dark] .footer-brand .logo{background:#fff;padding:5px;border-radius:4px}
html[data-theme=dark] .theme-toggle,html[data-theme=dark] .header-premium .menu{background:#19384b;color:#e0edf5;border-color:#34566a}
html[data-theme=dark] .topline{background:#061722;color:#b5cedd}
html[data-theme=dark] .button{background:#007fac;border-color:#008eba;color:#fff}
html[data-theme=dark] .hero,html[data-theme=dark] .expertise{background:#092b40}
html[data-theme=dark] .hero .button{background:#fff;color:#092b40;border-color:#fff}
html[data-theme=dark] .about-signature-layout,html[data-theme=dark] .team-section,html[data-theme=dark] .contact-editorial,html[data-theme=dark] .dedicated-quote,html[data-theme=dark] .footer-premium{background:#102838;border-color:#294657}
html[data-theme=dark] .product,html[data-theme=dark] .about-signature-layout .about-pillars>div,html[data-theme=dark] .team-grid article,html[data-theme=dark] .contact-card,html[data-theme=dark] .contact form,html[data-theme=dark] .dedicated-quote #quote{background:#153447;border-color:#315267;color:#e2edf5}
html[data-theme=dark] .about-copy>p,html[data-theme=dark] .about-signature-layout .about-copy>p+p,html[data-theme=dark] .about-pillars strong,html[data-theme=dark] .team-grid h3,html[data-theme=dark] .team-grid p,html[data-theme=dark] .contact-intro p,html[data-theme=dark] .contact-card strong,html[data-theme=dark] .contact-form-heading h3,html[data-theme=dark] .footer-premium .footer-top a,html[data-theme=dark] .footer-premium .footer-top p{color:#c1d5e2}
html[data-theme=dark] .contact h2,html[data-theme=dark] .devis-intro h1,html[data-theme=dark] .footer-invite h2{color:#e3edf5}
html[data-theme=dark] input,html[data-theme=dark] select,html[data-theme=dark] textarea{background:#0c2637!important;color:#e1edf5;border-color:#3b5c70!important}
html[data-theme=dark] label,html[data-theme=dark] .quote-step legend{color:#d8e9f2}
html[data-theme=dark] .quote-option,html[data-theme=dark] .quote-back,html[data-theme=dark] .quote-summary{background:#203f52;color:#dceaf3;border-color:#436478}
html[data-theme=dark] .quote-option[aria-pressed=true]{background:#134e67;border-color:#67c9ed}
html[data-theme=dark] .product-tags span,html[data-theme=dark] .pillar-icon,html[data-theme=dark] .faq-help{background:#203f52;color:#95d9ef}
html[data-theme=dark] .reference-logos>div{background:#fff;border-color:#fff}
html[data-theme=dark] .filters button{color:#bdd6e5;border-color:#416175}html[data-theme=dark] .filters button.active{background:#007fac;color:#fff}
html[data-theme=dark] .footer-invite,html[data-theme=dark] .footer-bottom{border-color:#335166}
html[data-theme=dark] .contact-float-toggle{background:#173b4f;color:#fff;border-color:#36596c}
html[data-theme=dark] .testimonial-card{background:#153447!important;border-color:#315267!important}
html[data-theme=dark] #temoignages .testimonial-card blockquote,html[data-theme=dark] #temoignages .testimonial-author strong{color:#e2edf5}
html[data-theme=dark] #temoignages .testimonial-story,html[data-theme=dark] #temoignages .testimonial-author div>span,html[data-theme=dark] #temoignages .testimonial-card small,html[data-theme=dark] #temoignages .testimonial-card-top{color:#b6ccdb}
html[data-theme=dark] #temoignages .testimonial-card blockquote em{color:#80d4ef}
html[data-theme=dark] #temoignages .testimonial-author{border-color:#3b596c}
html[data-theme=dark] #temoignages .testimonial-avatar{background:#244e65;border-color:#42697e;color:#a6e1f3}
@media(prefers-reduced-motion:reduce){.header-premium nav>a:after{transition:none}}

/* Contact details aligned around a consistent icon column. */
.footer-premium .footer-contact{padding:23px;background:#eaf2f7;border:1px solid #d7e5ed;border-radius:10px;margin-top:-23px}
.footer-premium .footer-contact h4{margin-bottom:22px;line-height:1.7}
.footer-premium .footer-contact .footer-contact-row{display:flex;align-items:flex-start;gap:13px;margin:0 0 20px;font-size:.8125rem;letter-spacing:0}
.footer-contact-row i{display:grid;place-items:center;flex:0 0 36px;height:36px;border:1px solid #c6dce7;border-radius:9px;color:#007fac;background:#fff;font-style:normal}.footer-contact-row svg{width:19px;height:19px}.footer-contact-row>span{min-width:0}.footer-contact-row small{display:block;color:#6b8493;font-size:.6875rem;line-height:1.5;margin-bottom:5px}.footer-contact-row strong{display:block;color:#183f55;font-size:.8125rem;font-weight:500;line-height:1.75;overflow-wrap:anywhere}.footer-premium .footer-contact .footer-phone strong{font-size:1.35rem;line-height:1.25;font-weight:600;letter-spacing:-.035em}.footer-contact-row b{display:block;font-weight:500;font-size:.6875rem;color:#007fac;margin-top:7px}.footer-premium .footer-contact .footer-address{margin-bottom:0;padding-top:17px;border-top:1px solid #d2e2ec}.footer-social{display:flex;gap:9px;margin:21px 0 18px}.social-placeholder{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#fff;border:1px solid #d5e3ec;color:#245871}.social-placeholder svg{width:17px;height:17px}
.mobile-nav-title{display:none}.menu-backdrop{position:fixed;inset:0;background:#061a2a70;z-index:29;backdrop-filter:blur(3px)}.menu-bars{display:flex;flex-direction:column;gap:4px;width:19px}.menu-bars i{display:block;width:19px;height:1.5px;background:currentColor;transition:transform .2s,opacity .2s}.menu[aria-expanded=true] .menu-bars i:first-child{transform:translateY(5.5px) rotate(45deg)}.menu[aria-expanded=true] .menu-bars i:nth-child(2){opacity:0}.menu[aria-expanded=true] .menu-bars i:last-child{transform:translateY(-5.5px) rotate(-45deg)}
.header-premium nav>a:not(.button){color:#36596f}.header-premium nav>a:not(.button):hover{color:#007fac}.header-premium nav .button{box-shadow:0 4px 12px #007fac18}.header-premium{z-index:30}
@media(max-width:1200px){.footer-premium .footer-top{gap:25px}.footer-premium .footer-contact{padding:20px}}
@media(max-width:1000px){.header-premium .menu{display:flex;align-items:center;gap:9px;background:#f4f8fb;border-color:#d6e3eb}.header-premium{padding:12px 5%;min-height:76px}.header-premium .logo{width:137px}.header-controls{gap:8px}.header-premium nav{left:4%;right:4%;top:calc(100% + 9px);border:1px solid #dce7ef;border-radius:12px;background:#fff;padding:22px 24px 25px;max-height:calc(100dvh - 150px);box-shadow:0 20px 55px #092b4026}.header-premium nav.open{gap:0;counter-reset:navlinks}.mobile-nav-title{display:block;font-size:.625rem;letter-spacing:.15em;color:#6c8797;padding-bottom:16px;margin-bottom:3px;border-bottom:1px solid #e3edf3}.header-premium nav.open>a:not(.button){display:flex;align-items:center;gap:15px;font-size:1rem;line-height:1.5;padding:15px 0;border-bottom:1px solid #e8eff4}.header-premium nav.open>a:not(.button):before{counter-increment:navlinks;content:'0' counter(navlinks);font-size:.6875rem;color:#7d9eb1;font-weight:400}.header-premium nav.open>a:not(.button):after{display:none}.header-premium nav.open>.button{margin-top:20px;font-size:.875rem;min-height:49px}.menu-is-open{overflow:hidden}.footer-premium .footer-contact{margin-top:0}}
@media(max-width:480px){.header-premium .logo{width:124px}.header-premium{gap:10px}.header-premium .menu{padding:10px;min-width:42px;min-height:42px}.menu-label,.header-premium .theme-label{display:none}.header-premium .theme-toggle{width:42px;padding:9px}.header-controls{gap:7px}.footer-premium .footer-contact{padding:24px}.footer-premium .footer-contact .footer-contact-row{gap:15px}.footer-contact-row strong{font-size:.8125rem}}
html[data-theme=dark] .footer-premium .footer-contact{background:#17384b;border-color:#335569}html[data-theme=dark] .footer-contact-row i{background:#244b62;border-color:#40677d;color:#8dd5ef}html[data-theme=dark] .footer-contact-row strong{color:#e1edf5}html[data-theme=dark] .footer-contact-row small{color:#a6c3d4}html[data-theme=dark] .footer-contact-row b{color:#81d0ed}html[data-theme=dark] .footer-premium .footer-contact .footer-address{border-color:#3b5c71}html[data-theme=dark] .social-placeholder{background:#193c50;border-color:#3d6074;color:#b4deef}html[data-theme=dark] .header-premium nav>a:not(.button){color:#cee2ee}html[data-theme=dark] .mobile-nav-title,html[data-theme=dark] .header-premium nav.open>a:not(.button){border-color:#355367}html[data-theme=dark] .mobile-nav-title{color:#9cbdcf}
@media(prefers-reduced-motion:reduce){.menu-bars i{transition:none}}

/* Complete footer signature: unified dark columns and a prominent project invitation. */
footer.footer-signature{background:#092b40;color:#dceaf3;border:0;padding:60px var(--gutter) 25px;position:relative}
.footer-signature .footer-invite{background:linear-gradient(115deg,#154660,#10384e);border:1px solid #345b70;border-radius:12px;padding:35px 38px;margin:0 0 52px;gap:35px}
.footer-signature .footer-invite .eyebrow{color:#94d9ef;font-size:.6875rem;letter-spacing:.15em}
.footer-signature .footer-invite h2{font-size:clamp(2rem,3vw,3rem);color:#fff;line-height:1.16;margin:15px 0 16px;letter-spacing:-.04em}
.footer-signature .footer-invite h2 em{color:#8ed5ee}
.footer-signature .footer-invite p{color:#b8d0de;margin:0;font-size:.875rem;line-height:1.7}
.footer-signature .footer-invite .button{background:#fff;color:#10384e;border-color:#fff;min-height:52px;font-size:.8125rem;padding:15px 25px}
.footer-signature .footer-invite .button:hover{background:#d7f0fa;border-color:#d7f0fa}
.footer-signature .footer-top{grid-template-columns:1.2fr .9fr .85fr 1.2fr;gap:45px;align-items:start}
.footer-signature .footer-brand .logo{width:172px;background:white;border-radius:5px;padding:7px}
.footer-signature .footer-brand p{font-size:.875rem;color:#a9c3d3;line-height:1.85;max-width:255px;margin:23px 0 21px}
.footer-signature .footer-top h4{color:#8dcce3;font-size:.6875rem;letter-spacing:.12em;line-height:1.6;margin:2px 0 24px;min-height:22px}
.footer-signature .footer-top a{color:#bed4e1;font-size:.875rem;line-height:1.6;margin-bottom:15px;transition:color .2s}
.footer-signature .footer-top a:hover{color:white}
.footer-signature .footer-contact{padding:0;border:0;border-radius:0;margin:0;background:transparent}
.footer-signature .footer-contact h4{margin-bottom:24px}
.footer-signature .footer-contact .footer-contact-row{gap:13px;margin-bottom:23px}
.footer-signature .footer-contact-row i{background:#163f56;border-color:#315a70;color:#8cd4ef;width:36px;height:36px;border-radius:8px}
.footer-signature .footer-contact-row small{color:#86a8bc;font-size:.6875rem;margin-bottom:5px}
.footer-signature .footer-contact-row strong{color:#e6f0f6;font-size:.8125rem;line-height:1.7}
.footer-signature .footer-contact .footer-phone strong{font-size:1.45rem;color:white;line-height:1.25}
.footer-signature .footer-contact-row b{color:#85d1ec;font-size:.6875rem;margin-top:8px}
.footer-signature .footer-contact .footer-address{border-color:#315166;padding-top:20px;margin-bottom:0}
.footer-signature .footer-social{gap:10px;margin:0 0 22px}
.footer-signature .social-placeholder{width:37px;height:37px;background:#153b52;border-color:#315870;color:#b3d9ea;border-radius:8px}
.footer-signature .footer-origin{display:flex;align-items:center;gap:8px;color:#86aabc;font-size:.5625rem;letter-spacing:.1em;line-height:1.8}
.footer-origin i{display:block;width:5px;height:5px;background:#76cbe8;border-radius:50%;flex-shrink:0}
.footer-signature .footer-bottom{border-color:#2d4d60;padding:25px 0 0;margin-top:48px;align-items:center;color:#85a7bb;font-size:.6875rem;gap:22px}
.footer-bottom-links{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.footer-bottom-links a{color:#b9d0df;font-size:.6875rem}.footer-bottom-links a:hover{color:#fff}.footer-back-top{border-left:1px solid #365568;padding-left:25px}
html[data-theme=dark] footer.footer-signature{background:#071c29}
html[data-theme=dark] .footer-signature .footer-top a,html[data-theme=dark] .footer-signature .footer-top p{color:#bed4e1}
html[data-theme=dark] .footer-signature .footer-contact{background:transparent;border:0}
html[data-theme=dark] .footer-signature .footer-invite h2{color:white}
html[data-theme=dark] .footer-signature .footer-invite .button{background:#fff;color:#10384e;border-color:#fff}
@media(max-width:1100px){.footer-signature .footer-top{grid-template-columns:1.1fr 1fr;gap:40px 60px}.footer-signature .footer-brand p{max-width:350px}.footer-signature .footer-contact{max-width:350px}}
@media(max-width:600px){footer.footer-signature{padding-top:38px;padding-bottom:110px}.footer-signature .footer-invite{padding:27px 24px;gap:24px;margin-bottom:35px;align-items:flex-start}.footer-signature .footer-invite h2{font-size:2rem}.footer-signature .footer-invite .button{width:100%;min-height:49px}.footer-signature .footer-top{grid-template-columns:1fr 1fr;gap:35px 20px}.footer-signature .footer-brand{grid-column:1/-1;border-bottom:1px solid #2d4d60;padding-bottom:30px}.footer-signature .footer-brand p{max-width:100%;margin:20px 0}.footer-signature .footer-brand .logo{width:160px}.footer-signature .footer-contact{grid-column:1/-1;max-width:none;border-top:1px solid #2d4d60;padding-top:28px}.footer-signature .footer-top h4{margin-bottom:20px}.footer-signature .footer-top a{font-size:.8125rem}.footer-signature .footer-contact h4{margin-bottom:23px}.footer-signature .footer-bottom{align-items:flex-start;gap:17px;margin-top:30px;padding-top:24px}.footer-bottom-links{gap:20px}.footer-back-top{padding-left:20px}}

.quote-dimensions{padding:20px;background:#f4f8fb;border:1px solid #dce7ee;border-radius:7px;margin:4px 0 25px}.dimensions-title{color:#21485f;font-size:.875rem;font-weight:600;margin:0 0 7px}.dimensions-help{font-size:.75rem;color:#617c8c;line-height:1.7;margin:0 0 17px}.dimensions-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.dimensions-grid label{margin:0!important;font-size:.8125rem}.dimensions-grid input{width:100%;margin-top:8px}html[data-theme=dark] .quote-dimensions{background:#102c3e;border-color:#34566a}html[data-theme=dark] .dimensions-title{color:#dceaf4}html[data-theme=dark] .dimensions-help{color:#a6bfce}@media(max-width:480px){.quote-dimensions{padding:16px}.dimensions-grid{grid-template-columns:1fr;gap:14px}}
