#hero-image{background-image:url('cold-room.png')}
:root{--ink:#102c35;--lime:#b7ee61;--muted:#52666b;--paper:#f6f8f8}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #44841e;outline-offset:6px}.draft{background:#e6edee;padding:7px 5%;font-size:12px;letter-spacing:.1em}.draft span{letter-spacing:0;margin-left:15px;color:#4c6269}header{padding:28px 5%;display:flex;align-items:center;gap:32px;background:var(--paper)}.brand{display:flex;align-items:center;gap:12px;line-height:1.1;font-weight:800;letter-spacing:.04em}.brand-icon{background:var(--ink);color:var(--lime);font-size:28px;padding:10px 11px;letter-spacing:-.1em}.brand small{display:block;font-size:12px;letter-spacing:.25em;margin-top:7px}nav{display:flex;gap:28px;margin-left:auto;font-size:14px}nav a:hover,.text-link:hover{text-decoration:underline}.nav-cta{border:1px solid #bcc8ca;padding:12px 18px;font-size:14px;margin-left:12px}.nav-cta span{margin-left:24px}.hero{display:grid;grid-template-columns:1.12fr 1fr;min-height:620px}.hero-copy{padding:62px 8% 30px 9%;display:flex;flex-wrap:wrap;align-content:flex-start;align-items:center}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.15em;margin:0 0 25px;width:100%}h1,h2,h3{font-family:'Manrope',Arial,sans-serif;line-height:1.12;letter-spacing:-.045em;margin:0}h1{font-size:clamp(42px,4.7vw,76px);font-weight:600;width:100%}h1 em{font-style:normal;color:#627b83}.intro{font-size:17px;max-width:490px;margin:29px 0 32px;color:var(--muted);width:100%}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;padding:16px 23px;background:var(--lime);color:var(--ink);border:0;font-weight:600}.button:hover{background:#a4dd4f}.text-link{font-size:14px;margin:16px 0 16px 24px}.hero-bottom{border-top:1px solid #cbd5d7;padding-top:23px;margin-top:65px;width:100%;display:flex;gap:20px;font-size:12px;letter-spacing:.08em}.hero-bottom b{color:#9aabad;font-weight:400}.hero-image{position:relative;background:#284751;background-size:cover;background-position:center;min-height:480px;overflow:hidden}.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,27,36,.83),transparent 65%)}.image-caption{position:absolute;z-index:1;bottom:34px;left:36px;right:25px;color:white}.image-caption>span{font-size:12px;letter-spacing:.14em}.image-caption strong{display:block;font-family:Manrope,Arial,sans-serif;font-size:27px;line-height:1.4;margin:16px 0}.image-caption small{font-size:12px;color:#c8d4d7}.sector-strip{background:var(--ink);color:#d2dfe2;padding:25px 5%;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:12px;letter-spacing:.12em}.section{padding:90px 7%}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;margin-bottom:48px}h2{font-size:clamp(32px,3.8vw,54px);font-weight:600}.section-head>p{max-width:390px;color:var(--muted);margin:0}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service{padding:35px;border:1px solid #cbd5d7;min-height:355px;display:flex;flex-direction:column}.number{font-size:14px;color:#647f87;margin-bottom:40px}.service h3{font-size:27px;line-height:1.2;font-weight:600}.service p{color:var(--muted);font-size:15px}.service a{font-size:14px;font-weight:600;margin-top:auto;padding-top:22px}.featured{background:var(--ink);color:white;border-color:var(--ink)}.featured p,.featured .number{color:#bacdd2}.featured a{color:var(--lime)}.equipment{background:#e8eff0}.equipment-list{border-top:1px solid #b4c4c8}details{border-bottom:1px solid #b4c4c8}summary{list-style:none;display:flex;align-items:center;gap:35px;cursor:pointer;padding:24px 0;font-size:26px;font-family:Manrope,Arial,sans-serif;font-weight:600;letter-spacing:-.035em}summary::-webkit-details-marker{display:none}summary span{font:14px 'DM Sans',Arial;color:#5e7980;letter-spacing:0}summary b{font-weight:400;margin-left:auto}details[open] summary b{transform:rotate(45deg)}details>div{padding:0 0 26px 53px;display:flex;gap:55px;color:var(--muted)}details p{max-width:380px;margin:0}details ul{margin:0;padding-left:20px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;margin-top:55px}.steps article{border-top:1px solid #c2cfd1;padding-top:20px}.steps span{color:#62808b;font-size:14px}.steps h3{font-size:22px;margin-top:30px;letter-spacing:-.025em}.steps p{color:var(--muted);font-size:15px}.quote{background:var(--ink);color:white;display:grid;grid-template-columns:1fr 1fr;gap:12%}.quote .eyebrow{color:var(--lime)}.quote>div>p:not(.eyebrow){color:#bfd0d5;max-width:440px}.quote .contact-note{font-size:14px;border-top:1px solid #42616a;margin-top:30px;padding-top:20px}.brief{background:#193944;padding:30px}.brief h3{font-size:23px;letter-spacing:-.02em}.brief ol{list-style:none;padding:0;margin:18px 0 25px;counter-reset:brief}.brief li{border-bottom:1px solid #3b5660;padding:11px 0;color:#bfced3;font-size:14px}.brief li span{display:block;color:white;font-weight:600}.brief .button{width:100%}#copy-status{font-size:14px;margin:10px 0 0;color:var(--lime)}footer{display:flex;align-items:center;gap:25px;padding:38px 5%}footer p{margin-left:auto;color:var(--muted);font-size:14px}footer>a:last-child{font-size:14px;margin-left:30px}@media(min-width:1600px){body{max-width:1800px;margin:auto}}@media(max-width:1000px){nav{gap:16px}.nav-cta{display:none}.hero-copy{padding-top:40px}.hero-bottom{gap:12px}.service{padding:25px}.steps{grid-template-columns:repeat(2,1fr)}.quote{gap:6%}}@media(max-width:700px){header{padding:20px 6%;flex-wrap:wrap;gap:20px}.brand{font-size:14px}nav{margin:0;width:100%;justify-content:space-between;font-size:13px;gap:8px}.draft{padding:6px 6%}.draft span{display:block;margin:0}.hero{grid-template-columns:1fr}.hero-copy{padding:40px 6% 28px}h1{font-size:44px}.hero-bottom{margin-top:35px;justify-content:space-between}.hero-image{min-height:360px}.image-caption{left:6%}.sector-strip{padding:22px 6%;gap:15px;font-size:11px}.section{padding:60px 6%}.section-head{display:block;margin-bottom:30px}.section-head>p{margin-top:25px}.services{grid-template-columns:1fr}.service{min-height:290px}.number{margin-bottom:25px}.steps{gap:25px}.steps h3{font-size:20px}.quote{grid-template-columns:1fr;gap:30px}.brief{padding:24px}summary{font-size:22px;gap:20px}details>div{display:block;padding-left:35px}details ul{margin-top:18px}footer{flex-wrap:wrap;padding:30px 6%}footer p{width:100%;margin:0}footer>a:last-child{margin:0}.text-link{margin-left:18px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.masthead{background:#fff;padding:26px 6%;justify-content:space-between;gap:36px}.header-contacts{display:flex;gap:44px}.contact-item small{display:block;color:var(--muted);font-size:12px;letter-spacing:.12em;margin-bottom:4px}.contact-item p{margin:0}.contact-item a{font-weight:600;overflow-wrap:anywhere}.header-contacts .contact-item{font-size:14px}.main-nav{margin:0;padding:0 6%;gap:0;background:var(--ink);color:white;display:flex;justify-content:flex-start;flex-wrap:wrap}.main-nav a{padding:19px 27px;font-size:15px;border-bottom:3px solid transparent}.main-nav a:first-child{padding-left:0;padding-right:32px}.main-nav a:hover,.main-nav a[aria-current]{color:var(--lime);border-bottom-color:var(--lime);text-decoration:none}.page-heading{padding:65px 7% 55px;background:#e8eff0;border-bottom:1px solid #cbd5d7}.page-heading h1{font-size:clamp(36px,4.5vw,62px);max-width:950px}.page-heading p:not(.eyebrow){color:var(--muted);max-width:650px;margin-bottom:0}.contact-layout{padding:64px 7% 90px;display:grid;grid-template-columns:.85fr 1.35fr;gap:7%}.contact-info{background:var(--ink);padding:36px;color:white;align-self:start}.contact-info>.eyebrow{color:var(--lime)}.contact-info .contact-item{border-top:1px solid #45606a;padding:20px 0}.contact-info small{color:#c1d2d8}.contact-info iframe{width:100%;height:220px;border:0;margin-top:12px}.map-link{display:block;color:var(--lime);margin-top:10px}.contact-layout form{min-width:0}.contact-layout h2{font-size:28px;line-height:1.3;margin-bottom:30px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.contact-layout label{display:block;font-size:14px;font-weight:600;margin-bottom:22px}.contact-layout input,.contact-layout textarea{display:block;width:100%;margin-top:8px;border:1px solid #b9c9ce;background:white;border-radius:3px;padding:13px;font:inherit;font-size:16px;color:var(--ink)}.contact-layout textarea{resize:vertical}.contact-layout input:focus,.contact-layout textarea:focus{outline:2px solid #4f7c88;outline-offset:2px}.contact-layout button:disabled{opacity:.6;cursor:wait}#form-status{min-height:26px}.about-body{max-width:1100px}.about-body p{font-size:18px;max-width:800px;color:var(--muted)}.hero{min-height:580px}.contact-item{min-width:0}main{min-height:55vh}.draft[hidden]{display:none}@media(max-width:800px){.masthead{align-items:flex-start}.header-contacts{gap:16px;flex-direction:column}.main-nav{padding:0 4%}.main-nav a,.main-nav a:first-child{padding:13px 14px;font-size:14px}.contact-layout{grid-template-columns:1fr;gap:35px}.contact-layout form{order:-1}.page-heading{padding:42px 6%}.contact-info{padding:26px}.form-grid{gap:16px}}@media(max-width:480px){.masthead{flex-direction:column;gap:22px}.header-contacts{flex-direction:row;flex-wrap:wrap;gap:12px 24px}.form-grid{grid-template-columns:1fr;gap:0}.main-nav a,.main-nav a:first-child{padding:12px 10px}.header-contacts .contact-item{font-size:13px}}
/* Compact contact page and bilingual header */
.masthead{gap:24px}.header-contacts{margin-left:auto}.language-switch{display:flex;gap:6px;flex-shrink:0}.language-switch a{font-size:14px;padding:8px 10px;border:1px solid #ced9dc;border-radius:3px;white-space:nowrap}.language-switch a[aria-current]{background:var(--ink);color:#fff;border-color:var(--ink)}.language-switch span{font-size:16px;margin-right:4px}.contact-layout{max-width:1160px;width:100%;margin:0 auto;padding:44px 30px 64px;grid-template-columns:minmax(0,420px) minmax(0,600px);gap:40px;align-items:start}.contact-info{padding:28px}.contact-layout h1,.contact-layout h2{font-size:26px;line-height:1.3;letter-spacing:-.025em;margin:0 0 26px}.contact-info h2{font-size:24px}.contact-layout .form-grid{gap:0 20px}.contact-layout label{margin-bottom:17px}.contact-layout input,.contact-layout textarea{padding:11px 12px}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.gallery-grid figure{position:relative;margin:0;min-width:0;aspect-ratio:4/3;overflow:hidden;border-radius:8px}.gallery-grid img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;background:#e8eff0}.gallery-grid figcaption{position:absolute;inset:auto 0 0;margin:0;padding:16px 20px;background:rgba(8,30,27,.72);color:#fff;font-size:16px;line-height:1.5;overflow-wrap:anywhere;max-height:100%;overflow-y:auto;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.gallery-admin{margin-bottom:28px}.gallery-section{max-width:1500px;margin:auto}@media(max-width:1000px){.masthead{flex-wrap:wrap}.header-contacts{gap:20px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:800px){.contact-layout{grid-template-columns:1fr;max-width:660px;padding:30px 6% 50px;gap:28px}.contact-layout form{order:0}.contact-info{width:100%}.header-contacts{flex-direction:row;flex-wrap:wrap}.language-switch{margin-left:auto}}@media(max-width:480px){.masthead{flex-direction:row}.masthead>.brand{flex:1}.masthead>.header-contacts{order:3;width:100%;margin-left:0}.language-switch a{padding:7px}.gallery-grid{grid-template-columns:1fr}.contact-layout h1,.contact-layout h2{font-size:24px}}
.main-nav{align-items:center;gap:0}.social-links{margin-left:auto;display:flex;gap:8px;align-items:center;padding:8px 0 8px 20px}.main-nav .social-link,.main-nav .social-link:first-child{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:6px;border:1px solid #47616a;border-radius:4px;color:white}.main-nav .social-link:hover{border-color:var(--lime);color:var(--lime)}.main-nav .social-link.unavailable{opacity:.4;cursor:default}@media(min-width:801px) and (max-width:1200px){.main-nav{padding:0 4%}.main-nav>a,.main-nav>a:first-child{padding:17px 12px;font-size:14px}.social-links{gap:5px;padding-left:10px}}@media(max-width:800px){.social-links{padding:8px 0 8px 12px}.main-nav{flex-wrap:wrap;justify-content:flex-start}.main-nav>a,.main-nav>a:first-child{padding:13px 10px}.social-links .social-link{width:32px;height:32px}}

/* Keep the language controls and flags in their existing positions. */
.language-switch .language-code{visibility:hidden;font-size:inherit;margin:0}
.brand-logo{display:block;width:70px;height:70px;object-fit:contain;flex-shrink:0;mix-blend-mode:multiply}.brand>span{font-size:24px;letter-spacing:.025em}.brand small{font-size:12px;letter-spacing:.07em;white-space:nowrap}.brand{gap:10px}@media(max-width:700px){.brand-logo{width:58px;height:58px}.brand>span{font-size:21px}.brand small{font-size:11px}}
.language-switch .language-flag{width:24px;height:16px;object-fit:fill;vertical-align:middle;margin-right:4px;display:inline-block}

/* Extendable product catalogue */
.catalog-intro{padding-top:64px;padding-bottom:52px}
.catalog-intro h1{font-size:clamp(32px,4vw,54px);line-height:1.15;letter-spacing:-1.6px;margin:0 0 25px}
.catalog-intro p{max-width:1000px;font-size:18px;line-height:1.85;margin:0;color:#50616a}
.catalog-section{padding-top:42px;padding-bottom:58px;border-top:1px solid #dbe2df}
.catalog-section-heading{display:flex;align-items:center;gap:20px;margin-bottom:28px}
.catalog-section-heading h2{font-size:clamp(24px,3vw,34px);line-height:1.25;margin:0;letter-spacing:-.8px}
.catalog-number{display:flex;align-items:center;justify-content:center;flex:0 0 46px;height:46px;border-radius:50%;background:#b7ee61;color:#102c35;font-size:14px;font-weight:700}
.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.catalog-card{min-width:0;background:#fff;border:1px solid #dce4e1;border-radius:8px;overflow:hidden}
.catalog-card>img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;background:white;padding:18px;box-sizing:border-box;border-bottom:1px solid #edf0ee}
.catalog-card-copy{padding:24px}
.catalog-card h3{font-size:21px;line-height:1.35;margin:0 0 12px;letter-spacing:-.4px}
.catalog-card p{font-size:15px;line-height:1.8;color:#596970;margin:0}
@media(max-width:1024px){.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.catalog-intro{padding-top:38px;padding-bottom:32px}.catalog-intro p{font-size:16px}.catalog-grid{grid-template-columns:minmax(0,1fr);gap:20px}.catalog-section{padding-top:30px;padding-bottom:36px}.catalog-section-heading{gap:12px}.catalog-number{flex-basis:38px;height:38px}.catalog-card-copy{padding:20px}}


.site-footer{display:block;padding:0;border-top:4px solid var(--lime);background:#edf2f1;color:var(--ink)}
.footer-main{display:grid;grid-template-columns:1.1fr 1.4fr .8fr;gap:6%;padding:58px 6% 54px;align-items:start}
.footer-identity .brand{align-items:center;letter-spacing:.015em;font-size:26px;line-height:1.2}
.footer-identity .brand small{font-size:15px;letter-spacing:.05em;font-weight:500;margin-top:9px}
.footer-identity .brand-logo{width:68px;height:68px;object-fit:contain;flex-shrink:0}
.site-footer h2{font-size:16px;font-weight:700;letter-spacing:.06em;margin:0 0 24px}
.footer-contact-row{display:flex;align-items:flex-start;gap:14px;margin:0 0 19px;font-size:16px;line-height:1.6}
.footer-contact-row svg{flex-shrink:0;margin-top:5px;color:#3f7569}
.footer-contact-row>div{min-width:0}.footer-contact-row a{display:block;overflow-wrap:anywhere}
.footer-label{display:block;color:#647872;font-size:12px;margin-bottom:2px;letter-spacing:.04em}
.footer-menu ul{list-style:none;margin:0;padding:0;display:grid;gap:11px}.footer-menu a{font-size:15px;line-height:1.6}
.site-footer a:hover{text-decoration:underline;text-underline-offset:4px}
.footer-copyright{display:flex;align-items:center;justify-content:space-between;gap:24px;background:#102c35;color:#edf4f1;padding:20px 6%;padding-right:max(100px,6%)}
.site-footer .footer-copyright p{margin:0;color:inherit;font-size:13px;line-height:1.6;width:auto}.footer-top{font-size:13px;white-space:nowrap}
.whatsapp-float{position:fixed;right:24px;bottom:24px;z-index:45;display:flex;align-items:center;justify-content:center;width:58px;height:58px;border-radius:50%;color:white;background:#178b49;border:3px solid #fff;box-shadow:0 4px 20px #102c3538;transition:transform .18s,background .18s}
.whatsapp-float:hover{background:#106f39;transform:translateY(-3px)}.whatsapp-float.unavailable{background:#708579;cursor:default}
@media(max-width:1000px){.footer-main{grid-template-columns:1fr 1.2fr;gap:32px}.footer-menu{grid-column:1/-1}.footer-menu ul{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:640px){.footer-main{grid-template-columns:1fr;padding:38px 6%;gap:30px}.footer-menu{grid-column:auto}.footer-menu ul{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-identity .brand{font-size:24px}.footer-copyright{align-items:flex-start;flex-direction:column;gap:12px;padding:20px 90px 24px 6%}.whatsapp-float{right:18px;bottom:18px;width:54px;height:54px}.site-footer h2{margin-bottom:18px}}
@media(prefers-reduced-motion:reduce){.whatsapp-float{transition:none}}

/* September review: a quiet, practical industrial identity. */
.review-site{--paper:#f7f9f9;--ink:#102c35;--muted:#52666b;background:var(--paper)}
.review-site .masthead{padding-top:19px;padding-bottom:19px}
.review-site .main-nav>a{min-height:52px;display:inline-flex;align-items:center;padding-top:13px;padding-bottom:13px}
.review-site .main-nav .social-link{min-width:40px;min-height:40px}
.review-site .unavailable{display:none}.review-site .social-links:has(> .unavailable:only-child){display:none}
.review-site .hero{grid-template-columns:1.05fr 1fr;min-height:520px;border-bottom:1px solid #dce4e6}
.review-site .hero-copy{padding:52px 9%;align-content:center}
.review-site .hero h1{font-size:clamp(38px,4.4vw,68px);line-height:1.12;letter-spacing:-.045em}
.review-site .hero h1 em{color:#47666e}.review-site .intro{font-size:17px;line-height:1.85;margin:24px 0 28px;max-width:560px}
.review-site .hero-bottom{margin-top:34px;padding-top:18px;gap:14px;font-size:12px;line-height:1.6}
.review-site .hero-image{min-height:500px}.review-site .eyebrow{font-size:12px;letter-spacing:.13em;line-height:1.6}
.review-site .section{padding:68px 6%}.review-site .section-head{gap:36px;margin-bottom:30px}
.review-site .section-head h2,.review-site .process>h2{font-size:clamp(28px,3.1vw,44px);line-height:1.18}
.review-site .section-head>p{font-size:16px;line-height:1.85}
.review-site .services{gap:20px}.review-site .service{min-height:330px;border-radius:8px;padding:30px;display:flex;flex-direction:column}
.review-site .service h3{font-size:25px;line-height:1.25}.review-site .service p{font-size:16px;line-height:1.8}.review-site .service>a{margin-top:auto;padding-top:20px;min-height:44px}
.review-site .service .number{margin-bottom:24px}.review-site .button{gap:22px;min-height:48px;border-radius:4px;font-size:15px;line-height:1.5}
.review-site .text-link{margin-left:0;display:inline-flex;align-items:center;min-height:44px;font-size:15px}
.review-site .sector-strip{font-size:12px;line-height:1.7;padding:20px 6%;gap:22px}
.review-site .steps{gap:28px}.review-site .steps p{font-size:16px;line-height:1.8}
.review-catalog{background:#edf2f3;border-top:1px solid #dce5e7;border-bottom:1px solid #dce5e7}
.review-category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.review-category{display:flex;flex-direction:column;min-width:0;background:white;border:1px solid #dbe4e7;border-radius:8px;overflow:hidden;transition:border-color .15s}
.review-category:hover{border-color:#6b8e94}.review-category img{width:100%;height:220px;object-fit:contain;background:#fff;padding:18px;box-sizing:border-box}
.review-category>div{padding:24px;border-top:1px solid #edf1f2}.review-category h3{font-size:23px;line-height:1.3;margin:0 0 14px}.review-category span{font-size:14px;color:#52666b;text-decoration:underline;text-underline-offset:4px}
.review-cta{display:flex;gap:40px;align-items:center;justify-content:space-between;background:#183b46;color:#fff}.review-cta>div{max-width:760px}.review-cta h2{font-size:clamp(26px,3vw,38px);line-height:1.25;letter-spacing:-.03em}.review-cta p{color:#d5e2e5;line-height:1.8;margin:16px 0 0;font-size:16px}.review-cta .button{flex-shrink:0}
.review-site .review-page-heading{padding:60px 6%;background:#eaf0f1}.review-page-heading h1{max-width:1000px;font-size:clamp(34px,4.2vw,56px);line-height:1.16}.review-site .review-page-heading p:not(.eyebrow){max-width:740px;font-size:18px;line-height:1.8}
.review-story{display:grid;grid-template-columns:1fr 1.35fr;gap:8%}.review-story h2{font-size:34px;line-height:1.25}.review-story p{font-size:17px;line-height:1.9;color:#52666b;margin-top:0}
.review-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;background:white;border-top:1px solid #dce4e6}.review-principles article{border-top:3px solid #b7ee61;padding-top:24px}.review-principles h2{font-size:23px;line-height:1.3}.review-principles p{font-size:16px;line-height:1.85;color:#52666b}
.review-project-stages{max-width:1250px;margin:auto}.review-stage{display:grid;grid-template-columns:80px 1fr;gap:32px;padding:34px 0;border-bottom:1px solid #dce4e6}.review-stage:first-child{padding-top:0}.stage-index{font-size:40px;color:#557b84;font-family:Manrope,sans-serif;line-height:1.2}.review-stage h2{font-size:30px;line-height:1.3}.review-stage p,.review-stage li{font-size:17px;line-height:1.85;color:#52666b;max-width:800px}.review-stage ul{padding-left:20px}
.catalog-jump{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.catalog-jump a{display:inline-flex;align-items:center;min-height:44px;padding:9px 16px;border:1px solid #bdced2;border-radius:4px;font-size:14px;background:white}.catalog-jump a:hover{background:#102c35;color:#fff}.review-site .catalog-card p{font-size:16px}.review-site .catalog-intro{padding-bottom:42px}.review-site .catalog-section{padding-top:42px;padding-bottom:50px}
.review-site .contact-layout{padding-top:48px;padding-bottom:64px}.review-site #contact-form>p:first-of-type{font-size:14px;line-height:1.7;color:#52666b;margin:-10px 0 24px}.review-site .contact-layout label{font-size:15px}.review-site #form-status:not(:empty){padding:12px;background:#e9f0ed;border-left:3px solid #3c7054}
.skip-link{position:fixed;left:20px;top:10px;z-index:100;background:#102c35;color:white;padding:12px 20px;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}
.mobile-menu-toggle{display:none}.review-site :focus-visible{outline:3px solid #487984;outline-offset:4px}.review-site .main-nav :focus-visible,.review-site .review-cta :focus-visible{outline-color:#b7ee61}
.review-site .footer-label{font-size:13px}.review-site .footer-menu a{min-height:32px;display:inline-flex;align-items:center}.review-site .language-switch a{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
@media(max-width:1000px){.review-site .hero{grid-template-columns:1fr 1fr}.review-site .hero-copy{padding:38px 8%}.review-site .hero-bottom{flex-wrap:wrap}.review-site .services{gap:16px}.review-site .service{padding:24px}.review-category h3{font-size:20px}.review-story{gap:5%}.review-cta{flex-direction:column;align-items:flex-start}}
@media(max-width:800px){.review-site .hero{grid-template-columns:1fr}.review-site .hero-copy{padding:40px 6%}.review-site .hero-image{min-height:330px}.review-site .hero h1{font-size:clamp(38px,7vw,56px)}.review-site .hero-bottom{margin-top:25px}.review-site .section{padding:46px 6%}.review-site .services,.review-category-grid,.review-principles{grid-template-columns:1fr}.review-site .service{min-height:0}.review-site .service p{max-width:660px}.review-story{grid-template-columns:1fr;gap:24px}.review-category{display:grid;grid-template-columns:1fr 1.1fr;align-items:center}.review-category>div{border-top:0}.review-category img{height:190px}.review-site .review-page-heading{padding:42px 6%}.review-stage{grid-template-columns:46px 1fr;gap:18px}.stage-index{font-size:30px}.review-stage h2{font-size:25px}.mobile-menu-toggle{display:flex;width:100%;justify-content:space-between;align-items:center;border:0;background:#102c35;color:white;padding:15px 6%;min-height:52px;font-size:16px}.menu-ready .main-nav:not(.is-open){display:none}.review-site .main-nav{padding:8px 6% 16px;display:flex;align-items:stretch;gap:0}.review-site .main-nav>a,.review-site .main-nav>a:first-child{width:50%;padding:13px 8px;min-height:48px;font-size:15px}.review-site .social-links{margin-left:0;padding:12px 0 0;width:100%}.review-site .main-nav .social-link{width:42px;height:42px}.review-site .steps{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.review-site .header-contacts{gap:12px 20px}.review-site .masthead{padding:16px 5%;gap:16px}.review-site .brand small{white-space:normal;line-height:1.4}.review-site .brand>span{font-size:21px}.review-site .brand-logo{width:48px;height:48px}.review-site .language-switch{gap:4px}.review-site .language-switch a{min-width:38px;padding:5px}.review-site .hero .button,.review-site .hero .text-link{margin-bottom:8px}.review-category{grid-template-columns:1fr}.review-category img{height:220px}.review-category>div{border-top:1px solid #edf1f2}.review-site .steps{grid-template-columns:1fr}.review-site .contact-layout form{order:-1}.review-stage{grid-template-columns:1fr;gap:12px}.review-cta .button{width:100%}}
@media(prefers-reduced-motion:reduce){.review-category{transition:none}}

/* Consistent page titles and polished controls. */
.review-site .hero-copy>.text-link{display:none}
.review-site .main-nav .social-link.unavailable{display:inline-flex;opacity:.6}
.review-site .social-links:has(>.unavailable:only-child){display:flex}
.review-site .language-switch a{position:relative;display:block;width:44px;height:auto!important;min-width:0!important;min-height:0!important;max-height:none!important;aspect-ratio:1;padding:0!important;border:0;border-radius:3px;overflow:hidden;box-shadow:0 0 0 1px #b7c9ce;flex-shrink:0}
.review-site .language-switch a[aria-current]{box-shadow:0 0 0 2px #102c35}
.review-site .language-switch .language-flag{position:absolute;inset:0;display:block;width:100%!important;height:100%!important;margin:0!important;object-fit:fill}
.review-site .site-footer a.brand:hover,.review-site .site-footer a.brand:focus,.review-site .site-footer a.brand *{text-decoration:none!important}
.review-site .route-heading{padding:34px 6% 30px;background:#eaf0f1;border-bottom:1px solid #d7e2e5}
.review-site .route-heading h1{font-size:clamp(28px,3vw,38px);line-height:1.25;letter-spacing:-.025em;margin:0;font-weight:600}
.review-site .page-heading,.review-site .review-page-heading{padding:32px 6% 26px;background:var(--paper);border-bottom:0}
.review-site .page-heading h2,.review-site .review-page-heading h2{font-size:clamp(23px,2.4vw,30px);line-height:1.3;max-width:1000px;letter-spacing:-.025em}
.review-site .catalog-intro{padding-top:32px}.review-site .catalog-intro p{font-size:17px}
.review-site .whatsapp-float{width:60px;height:60px;background:#25d366;border:2px solid white;box-shadow:0 5px 20px #128c7e45;isolation:isolate;animation:whatsapp-lift 5s ease-in-out infinite}
.review-site .whatsapp-float::before{content:'';position:absolute;inset:-2px;border:2px solid #25d366;border-radius:50%;z-index:-1;animation:whatsapp-ring 3.4s ease-out infinite;pointer-events:none}
.review-site .whatsapp-float:hover{background:#1bbd5a;transform:translateY(-4px) scale(1.07);animation-play-state:paused}
@keyframes whatsapp-ring{0%,35%{transform:scale(1);opacity:0}45%{opacity:.45}85%,100%{transform:scale(1.45);opacity:0}}
@keyframes whatsapp-lift{0%,65%,100%{transform:translateY(0)}75%{transform:translateY(-5px)}85%{transform:translateY(0)}92%{transform:translateY(-2px)}}
@media(max-width:800px){
 .menu-ready .review-site .main-nav,.menu-ready .review-site .main-nav:not(.is-open){display:flex;max-height:0;opacity:0;overflow:hidden;visibility:hidden;padding-top:0;padding-bottom:0;transition:max-height .34s cubic-bezier(.22,.61,.36,1),padding .34s ease,opacity .22s ease,visibility 0s .34s}
 .menu-ready .review-site .main-nav.is-open{max-height:var(--menu-height,600px);opacity:1;visibility:visible;padding-top:8px;padding-bottom:16px;transition:max-height .38s cubic-bezier(.22,.61,.36,1),padding .38s ease,opacity .28s .04s ease,visibility 0s}
 .mobile-menu-toggle{font-weight:500}.mobile-menu-toggle svg{transition:transform .28s ease}.mobile-menu-toggle[aria-expanded=true] svg{transform:rotate(90deg)}
 .mobile-page-name{text-align:left;line-height:1.4;max-width:calc(100% - 42px)}
 .review-site .route-heading{padding:26px 6%}.review-site .page-heading,.review-site .review-page-heading{padding-top:26px;padding-bottom:20px}
}
@media(max-width:480px){.review-site .whatsapp-float{width:56px;height:56px;right:20px;bottom:22px}}
@media(prefers-reduced-motion:reduce){.review-site .whatsapp-float,.review-site .whatsapp-float::before{animation:none}.menu-ready .review-site .main-nav,.menu-ready .review-site .main-nav.is-open,.mobile-menu-toggle svg{transition:none}}

/* One borderless flag shows the current language and toggles to the other. */
.review-site .language-switch .language-toggle{display:flex;align-items:center;justify-content:center;position:relative;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;max-width:44px!important;max-height:44px!important;aspect-ratio:auto;padding:0!important;border:0!important;border-radius:0;background:transparent!important;box-shadow:none!important;overflow:visible}
.review-site .language-switch .language-toggle .language-flag{position:static;inset:auto;width:30px!important;height:auto!important;max-width:30px!important;min-width:0!important;min-height:0!important;max-height:none!important;object-fit:contain;margin:0!important;border:0;border-radius:2px;box-shadow:none;transition:transform .18s ease}
.review-site .language-switch .language-toggle:hover .language-flag{transform:scale(1.08)}
.review-site .language-switch .language-toggle:focus:not(:focus-visible){outline:0}
@media(prefers-reduced-motion:reduce){.review-site .language-switch .language-toggle .language-flag{transition:none}}

/* A single visible page introduction; the route name remains accessible. */
.sr-only.route-heading{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%);border:0!important;white-space:nowrap}
#contact-form #form-status{display:block;position:static!important;clear:both;margin:20px 0 0!important;line-height:1.6;min-height:0}#form-status:empty{display:none!important}.field-error{display:block;color:#a32929;font-size:14px;line-height:1.5;margin-top:7px}[aria-invalid=true]{border-color:#a32929!important}.field-error:empty{display:none}


/* Project introduction and stages share one aligned content column. */
.review-site .project-page{width:min(1120px,88%);margin:0 auto;padding:0 0 48px}
.review-site .project-page .review-page-heading{width:100%;padding:40px 0 26px;margin:0;background:transparent}
.review-site .project-page .review-page-heading h2{font-size:clamp(27px,3vw,38px);max-width:none;margin:0 0 14px;line-height:1.25}
.review-site .project-page .review-page-heading p:not(.eyebrow){max-width:880px;margin:0;font-size:17px;line-height:1.75}
.review-site .project-page .review-project-stages{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;width:100%;max-width:none;margin:0;padding:0;align-items:stretch}
.project-page .review-stage{display:grid;grid-template-columns:40px minmax(0,1fr);align-content:start;align-items:start;gap:18px;margin:0;padding:26px;border:1px solid #d6e3e5;border-radius:10px;background:#f5f8f8;color:#102c35;min-width:0}
.project-page .stage-index{font-size:24px;line-height:1.3;color:#447a87;padding-top:2px;font-weight:600}
.project-page .review-stage h2{font-size:clamp(20px,2vw,24px);line-height:1.35;margin:0 0 12px;letter-spacing:-.025em}
.project-page .review-stage p{font-size:16px;line-height:1.75;max-width:none;margin:0;color:#50666b}
.review-site .project-page .review-cta{width:100%;margin:26px 0 0;padding:26px 30px;border-radius:10px;gap:24px}
.project-page .review-cta h2{font-size:clamp(23px,2.4vw,29px);margin:0}.project-page .review-cta p{margin-top:10px}
@media(max-width:760px){.review-site .project-page{width:90%;padding-bottom:32px}.review-site .project-page .review-page-heading{padding:28px 0 22px}.review-site .project-page .review-project-stages{grid-template-columns:1fr;gap:14px}.project-page .review-stage{grid-template-columns:30px minmax(0,1fr);padding:22px 18px;gap:12px}.project-page .stage-index{font-size:21px}.review-site .project-page .review-cta{padding:24px;margin-top:22px}}

/* Balanced header identity and quiet, selectable contact details. */
.review-site .masthead{padding-top:22px;padding-bottom:22px;align-items:center}
.review-site .masthead>.brand{display:flex;align-items:center;gap:14px;flex:0 1 auto;min-width:0}
.review-site .masthead .brand-logo{width:64px;height:64px;object-fit:contain}
.review-site .masthead .brand>span{display:flex;flex-direction:column;justify-content:center;gap:5px;font-size:28px;line-height:1.08;letter-spacing:.005em;font-weight:700}
.review-site .masthead .brand small{display:block;margin:0;font-size:13px;line-height:1.35;letter-spacing:.025em;font-weight:500;white-space:nowrap}
.review-site .header-contacts .contact-item p{font-size:14px;font-weight:500;line-height:1.5;overflow-wrap:anywhere;cursor:text;user-select:text}
@media(max-width:600px){.review-site .masthead{padding-top:18px;padding-bottom:18px}.review-site .masthead>.brand{gap:11px}.review-site .masthead .brand-logo{width:52px;height:52px}.review-site .masthead .brand>span{font-size:24px;gap:4px}.review-site .masthead .brand small{font-size:12px;white-space:normal}.review-site .header-contacts .contact-item p{font-size:13px}}
/* In-page product details */
.catalog-card[data-product-card]{position:relative;cursor:pointer;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}
.catalog-card[data-product-card]:hover{transform:translateY(-4px);border-color:#9cb4bb;box-shadow:0 12px 28px #102c350c}
.product-open:focus:not(:focus-visible){outline:none}
.catalog-card-copy{display:flex;flex-direction:column;min-height:140px}.catalog-card-copy h3{flex:1}
.product-open{display:flex;align-items:center;justify-content:space-between;gap:18px;border:0;border-top:1px solid #e5ebed;border-radius:0;background:transparent;color:#285566;padding:15px 0 0;margin:12px 0 0;width:100%;font:600 14px 'DM Sans',sans-serif;cursor:pointer;text-align:left}.product-open:hover{color:#102c35}.product-open svg{flex-shrink:0;transition:transform .2s}.catalog-card:hover .product-open svg{transform:translateX(4px)}
[data-product-detail][hidden]{display:none!important}
.product-dialog{width:min(1060px,calc(100% - 48px));max-width:none;max-height:min(860px,calc(100dvh - 64px));padding:0;border:1px solid #dbe4e7;border-radius:16px;background:#fff;color:#102c35;box-shadow:0 32px 100px #081c3540;overflow:hidden;overscroll-behavior:contain}
.product-dialog[open]{display:flex;flex-direction:column;animation:product-enter .24s cubic-bezier(.2,.7,.2,1)}.product-dialog::backdrop{background:#081c3580;backdrop-filter:blur(4px);animation:product-backdrop .24s ease}.product-dialog.is-closing{animation:product-leave .18s ease forwards}.product-dialog.is-closing::backdrop{animation:product-backdrop .18s ease reverse forwards}
.product-dialog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-shrink:0;padding:12px 20px 12px 28px;border-bottom:1px solid #e5ebed;background:#fff;z-index:1}.product-dialog-toolbar>span{font-size:12px;font-weight:700;letter-spacing:.12em;color:#667a83}.product-dialog-toolbar button{display:grid;place-items:center;width:44px;height:44px;padding:0;flex-shrink:0;border:1px solid #dce5e8;border-radius:50%;background:#f4f7f8;color:#183d4b;cursor:pointer}.product-dialog-toolbar button:hover{background:#e5edef}.product-dialog button:focus-visible,.product-dialog summary:focus-visible{outline:3px solid #467e95;outline-offset:3px}
.product-dialog-body{overflow:auto;overscroll-behavior:contain;min-height:0;flex:1}.product-detail{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;gap:32px;padding:34px}.product-detail-visual{position:sticky;top:24px;background:#f5f7f8;border:1px solid #e7ecee;border-radius:10px;overflow:hidden}.product-detail-visual img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;background:#fff}.product-detail-copy{min-width:0}.product-category{font-size:13px;line-height:1.4;font-weight:700;color:#54717f;margin:0 0 12px;text-transform:uppercase;letter-spacing:.09em}.product-detail-copy h2{font-size:clamp(24px,2.5vw,32px);line-height:1.25;letter-spacing:-.7px;margin:0 0 24px}.product-detail-copy [data-catalog-field="description"]{font-size:16px;line-height:1.85;color:#4d626d;white-space:pre-line;overflow-wrap:anywhere}.product-specs{margin-top:28px;border-top:1px solid #dfe7ea;padding-top:20px}.product-specs summary{cursor:pointer;font-size:15px;font-weight:700;padding:5px 0}.product-specs[open] summary{margin-bottom:15px}.product-specs [data-catalog-field="description"]{font-size:15px}
@keyframes product-enter{from{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes product-leave{to{opacity:0;transform:translateY(12px) scale(.99)}}@keyframes product-backdrop{from{background:#081c3500;backdrop-filter:blur(0)}to{background:#081c3580;backdrop-filter:blur(4px)}}
@media(max-width:760px){.product-dialog{width:calc(100% - 24px);max-height:calc(100dvh - 24px);border-radius:12px}.product-detail{grid-template-columns:1fr;gap:24px;padding:20px}.product-detail-visual{position:static}.product-detail-visual img{aspect-ratio:3/2;max-height:280px}.product-detail-copy h2{font-size:25px}.product-dialog-toolbar{padding:10px 14px 10px 20px}}
@media(prefers-reduced-motion:reduce){.catalog-card[data-product-card],.product-open svg{transition:none}.product-dialog[open],.product-dialog.is-closing,.product-dialog::backdrop,.product-dialog.is-closing::backdrop{animation:none}.catalog-card[data-product-card]:hover{transform:none}}
/* About: real projects and a complete delivery approach */
.about-page{background:#fff}.about-wrap{width:min(1240px,88%);margin-inline:auto}.about-page h2{font-size:clamp(28px,3vw,42px);line-height:1.23;letter-spacing:-.035em}.about-page .eyebrow{color:#517065;margin:0 0 18px;font-size:12px;letter-spacing:.13em;font-weight:700}.about-hero{display:grid;grid-template-columns:1.05fr 1fr;gap:7%;padding-block:70px 78px;align-items:center}.about-hero h2{font-size:clamp(34px,4vw,56px);line-height:1.13;max-width:660px}.about-lead{font-size:17px;line-height:1.85;color:#52666b;margin:26px 0 30px}.about-actions{display:flex;gap:22px;align-items:center;flex-wrap:wrap}.about-actions .button{font-size:14px;padding:15px 20px;margin:0}.about-secondary{display:inline-flex;align-items:center;gap:10px;font-size:14px;font-weight:600}.about-secondary svg{width:20px;height:20px}.about-photo{margin:0;min-width:0}.about-photo img{display:block;width:100%;height:auto;aspect-ratio:5/4;object-fit:cover;border-radius:8px}.about-photo figcaption{font-size:13px;line-height:1.5;color:#61716e;padding:12px 0 0}.about-hero>.about-photo{position:relative}.about-hero>.about-photo:before{content:'';position:absolute;left:-10px;top:28px;width:4px;height:90px;background:#b7ee61;border-radius:2px}.about-story-band{background:#f1f4f3;border-top:1px solid #e4eae7;border-bottom:1px solid #e4eae7}.about-story{display:grid;grid-template-columns:.9fr 1.1fr;gap:8%;align-items:center;padding-block:76px}.about-story .about-photo img{aspect-ratio:4/5;max-height:560px}.about-story-copy p:not(.eyebrow){font-size:17px;line-height:1.85;color:#52666b;margin:24px 0 0}.about-services{padding-block:78px}.about-section-heading{max-width:720px;margin-bottom:36px}.about-service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.about-service{border:1px solid #dce5e0;border-radius:8px;display:flex;flex-direction:column;padding:28px 24px;position:relative;transition:border-color .2s,transform .2s,box-shadow .2s}.about-service:hover{border-color:#9ab6a7;transform:translateY(-3px);box-shadow:0 12px 30px #123c2d0a}.about-service-icon{display:flex;color:#2b5c48;margin-bottom:30px}.about-service h3{font-size:21px;line-height:1.3;letter-spacing:-.025em}.about-service p{font-size:15px;line-height:1.75;color:#52666b;margin:16px 0 26px}.about-service-arrow{display:block;margin-top:auto;color:#416252}.about-service-arrow svg{width:24px;height:24px}.about-process-band{background:#173d32;color:#fff;padding-block:76px}.about-process-band .eyebrow{color:#b7ee61}.about-process-heading{max-width:920px}.about-process-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));list-style:none;padding:0;margin:52px 0 38px;gap:0}.about-process-steps li{position:relative;padding-right:20px}.about-process-steps li:not(:last-child):after{content:'';position:absolute;height:1px;background:#ffffff38;left:58px;right:12px;top:23px}.about-step-number{display:grid;place-items:center;width:46px;height:46px;border:1px solid #b7ee6180;border-radius:50%;color:#b7ee61;font-size:14px;font-weight:600;background:#173d32;margin-bottom:18px}.about-process-steps h3{font-size:17px;letter-spacing:0;line-height:1.4}.about-process-note{max-width:890px;font-size:16px;line-height:1.9;color:#d2e0d9;margin:0}.about-principles{padding-block:76px;display:grid;grid-template-columns:1fr 1.2fr;gap:9%;align-items:start}.about-principles ul{list-style:none;margin:0 0 24px;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:20px}.about-principles li{display:flex;align-items:center;gap:12px;font-size:15px;font-weight:600}.about-principles li svg{width:22px;height:22px;flex-shrink:0;color:#548267}.about-principles p:not(.eyebrow){font-size:17px;line-height:1.85;color:#52666b;margin:0}.about-project-band{background:#fff;border-top:1px solid #e2e9e5;padding-block:72px 80px}.about-project-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:34px}.about-project-heading .text-link{white-space:nowrap;font-size:14px;margin:0}.about-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.about-project{min-width:0}.about-project .about-photo img{aspect-ratio:4/3;transition:filter .2s}.about-project:hover img{filter:brightness(.95)}.about-project .about-photo figcaption{font-size:15px;color:#29433a;font-weight:500;padding-top:15px}.about-final-band{background:#12382b;color:#fff;padding-block:66px}.about-final{display:flex;align-items:center;justify-content:space-between;gap:40px}.about-final>div{max-width:780px}.about-final h2{font-size:clamp(28px,3vw,40px)}.about-final p{font-size:16px;line-height:1.8;color:#d2e0d9;margin:20px 0 0}.about-final .button{flex-shrink:0;display:inline-flex;align-items:center;gap:18px;margin:0}.about-final .button svg{width:22px;height:22px}.about-no-photos .about-hero,.about-no-photos .about-story{grid-template-columns:1fr}.about-no-photos .about-hero-copy,.about-no-photos .about-story-copy{max-width:900px}.about-no-photos .about-hero h2{max-width:850px}
@media(max-width:1050px){.about-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-hero{gap:5%}.about-actions{gap:18px}.about-final{align-items:flex-start;flex-direction:column}.about-principles{gap:6%}.about-principles ul{grid-template-columns:1fr}}
@media(max-width:760px){.about-wrap{width:88%}.about-hero{grid-template-columns:1fr;padding-block:38px 46px;gap:32px}.about-hero h2{font-size:clamp(32px,7vw,46px)}.about-lead{font-size:16px}.about-hero .about-photo img{aspect-ratio:4/3;max-height:430px}.about-story{grid-template-columns:1fr;padding-block:48px;gap:30px}.about-story-copy{order:-1}.about-story .about-photo img{aspect-ratio:4/3;max-height:380px}.about-story-copy p:not(.eyebrow){font-size:16px}.about-services{padding-block:48px}.about-process-band{padding-block:48px}.about-process-steps{grid-template-columns:1fr;margin:32px 0;gap:0}.about-process-steps li{display:flex;gap:20px;align-items:center;min-height:78px;padding:0}.about-step-number{margin:0;flex-shrink:0}.about-process-steps li:not(:last-child):after{width:1px;height:32px;left:23px;right:auto;top:62px}.about-principles{grid-template-columns:1fr;padding-block:48px;gap:28px}.about-principles ul{grid-template-columns:1fr 1fr}.about-project-band{padding-block:48px}.about-project-heading{align-items:start;flex-direction:column}.about-project-grid{grid-template-columns:1fr;gap:30px}.about-project .about-photo img{max-height:390px}.about-final-band{padding-block:48px}.about-final{gap:28px}}
@media(max-width:480px){.about-service-grid{grid-template-columns:1fr}.about-service{padding:24px}.about-service-icon{margin-bottom:22px}.about-principles ul{grid-template-columns:1fr}.about-actions{align-items:flex-start;flex-direction:column}.about-actions .button{width:100%;justify-content:center;text-align:center}.about-secondary{padding:8px 0}}
@media(prefers-reduced-motion:reduce){.about-service,.about-project .about-photo img{transition:none}.about-service:hover{transform:none}}

/* Fixed gallery framing matches the crop editor. */
.gallery-grid>figure>img{display:block;width:100%;height:100%;aspect-ratio:4/3;object-fit:cover}

/* Panel information is reachable without scrolling through the overview. */
.product-detail-tabs{display:flex;gap:6px;padding:5px;margin:0 0 22px;background:#edf2f1;border:1px solid #dce5e2;border-radius:10px}
.product-detail-tabs button{flex:1;border:0;border-radius:7px;padding:12px 10px;background:transparent;color:#486158;font:inherit;font-size:14px;font-weight:650;line-height:1.4;cursor:pointer}
.product-detail-tabs button[aria-selected="true"]{background:#173e34;color:white;box-shadow:0 2px 5px #173e341a}
.product-detail-tabs button:focus-visible{outline:2px solid #638e30;outline-offset:2px}
.product-information-panel[hidden]{display:none!important}
.product-information-panel{padding:0 2px 8px}
.product-technical-panel{padding:20px;background:#f3f6f4;border:1px solid #dce5e0;border-radius:10px}
.product-detail-copy .product-information-panel [data-catalog-field="description"]{line-height:1.75;color:#354d45}
@media(min-width:761px){.product-detail:has(.product-detail-tabs){grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:28px}.product-detail:has(.product-detail-tabs) .product-detail-visual img{aspect-ratio:4/5}}
@media(max-width:760px){.product-detail:has(.product-detail-tabs){gap:20px}.product-detail:has(.product-detail-tabs) .product-detail-visual img{max-height:190px;aspect-ratio:2/1}.product-detail-tabs{margin-bottom:18px}.product-detail-tabs button{padding:11px 8px}.product-technical-panel{padding:16px}}

/* The image and toolbar stay outside the product information scroll area. */
.product-dialog{height:min(800px,calc(100dvh - 64px))}
.product-dialog-body{overflow:hidden;display:flex}
.product-dialog-body>.product-detail{flex:1;min-height:0;height:100%;box-sizing:border-box;overflow:hidden;align-items:start}
.product-detail-visual{position:static;align-self:start;min-height:0;max-height:100%;background:#fff}
.product-detail-visual img,.product-detail:has(.product-detail-tabs) .product-detail-visual img{aspect-ratio:1;height:auto;max-height:calc(100dvh - 200px);object-fit:contain;object-position:top left}
.product-detail-copy{height:100%;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding-right:12px}
.product-dialog-toolbar>span{font-size:14px;letter-spacing:.025em;color:#354d45}
.product-technical-panel{padding:0;border:0;background:transparent}
.product-spec-table{width:100%;border-collapse:separate;border-spacing:0;font-size:14px;line-height:1.65;table-layout:fixed;border:1px solid #dce5e0;border-radius:10px;overflow:hidden}
.product-spec-table caption{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.product-spec-table th,.product-spec-table td{padding:14px;text-align:left;vertical-align:top;overflow-wrap:anywhere;border-bottom:1px solid #dce5e0}
.product-spec-table th{width:30%;font-weight:650;background:#edf3ef;color:#244d3e}
.product-spec-table td{color:#354d45;background:#fff}
.product-spec-table tr:last-child>*{border-bottom:0}
@media(max-width:760px){.product-dialog{height:calc(100dvh - 24px)}.product-dialog-body>.product-detail{grid-template-rows:auto minmax(0,1fr);gap:16px;padding:16px}.product-detail-visual{width:100%}.product-detail-visual img,.product-detail:has(.product-detail-tabs) .product-detail-visual img{height:clamp(90px,20dvh,150px);max-height:150px;aspect-ratio:auto;object-position:top left}.product-detail-copy{padding-right:4px}.product-detail-copy h2{font-size:23px;margin-bottom:16px}.product-spec-table th,.product-spec-table td{padding:10px}.product-spec-table th{width:32%}}

/* Common panel introduction accompanies the fixed product image. */
.product-detail-visual:has(.product-panel-intro){display:flex;flex-direction:column;max-height:100%;border:0;border-radius:0;overflow:hidden}
.product-detail-visual:has(.product-panel-intro) img{flex:0 1 auto;min-height:0;max-height:min(360px,43dvh);object-fit:contain;object-position:top left;border:1px solid #e7ecee;border-radius:10px;box-sizing:border-box}
.product-panel-intro{flex:0 1 auto;min-height:0;overflow:auto;margin:18px 0 0;padding:0 4px;font-size:15px;line-height:1.7;color:#4d626d;overflow-wrap:anywhere}
@media(max-width:760px){.product-detail-visual:has(.product-panel-intro){max-height:36dvh}.product-detail-visual:has(.product-panel-intro) img{height:100px;max-height:100px;flex-shrink:0}.product-panel-intro{margin-top:10px;font-size:14px;line-height:1.55}}

/* Match the 4:3 panel assets instead of stretching their image boxes. */
.product-detail-visual:has(.product-panel-intro) img,.product-detail:has(.product-detail-tabs) .product-detail-visual:has(.product-panel-intro) img{width:100%;height:auto;aspect-ratio:4/3;max-height:none;flex:0 0 auto;object-fit:contain;object-position:center}
.product-panel-intro{margin-top:12px}
@media(max-width:760px){.product-detail-visual:has(.product-panel-intro) img,.product-detail:has(.product-detail-tabs) .product-detail-visual:has(.product-panel-intro) img{width:160px;max-width:100%;height:auto;aspect-ratio:4/3;max-height:none}.product-panel-intro{margin-top:10px}}

.about-hero>.about-photo:before{content:none}
.review-site .main-nav .social-links .social-link{color:#fff!important;border-color:#47616a!important;background:transparent;transition:color .18s,border-color .18s}
.review-site .main-nav .social-links .social-link svg{color:inherit!important;fill:currentColor;stroke:none}
@media(hover:hover) and (pointer:fine){.review-site .main-nav .social-links .social-link:hover{color:var(--lime)!important;border-color:var(--lime)!important}}
/* One title bar and natural image bounds across every product category. */
.product-dialog-heading{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;min-width:0}
.product-dialog-heading>[data-product-group-label]{font-size:14px;color:#647a70;line-height:1.4}
.product-heading-divider{color:#b7c5be}
.product-dialog-heading h2{margin:0;font-size:18px;font-weight:650;line-height:1.35;letter-spacing:-.02em;color:#173e34;overflow-wrap:anywhere}
#product-dialog .product-detail-visual{border:0;border-radius:0;background:transparent;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start}
#product-dialog .product-detail-visual img{display:block;width:100%;height:auto;aspect-ratio:auto;max-height:none;min-height:0;flex:0 0 auto;object-fit:initial;object-position:initial;border:0;border-radius:12px;box-sizing:border-box}
@media(max-width:760px){.product-dialog-heading{gap:4px 8px}.product-dialog-heading h2{font-size:16px}.product-dialog-heading>[data-product-group-label]{font-size:12px}#product-dialog .product-detail-visual img{width:160px;max-width:100%;height:auto;aspect-ratio:auto;max-height:none;border-radius:10px}}

/* Shared original brand wordmark: intrinsic proportions on every viewport. */
.review-site .brand-with-wordmark,.brand-with-wordmark{gap:5px;min-width:0;max-width:100%;}
.brand-with-wordmark .brand-copy{display:none!important;}
.review-site .brand-with-wordmark .brand-wordmark,.brand-with-wordmark .brand-wordmark{display:block;width:228px;max-width:calc(100vw - 140px);height:auto;object-fit:contain;flex-shrink:1;}
.review-site .masthead .brand-with-wordmark .brand-logo,.footer-identity .brand-with-wordmark .brand-logo{width:56px;height:56px;}
@media(max-width:600px){.review-site .brand-with-wordmark,.brand-with-wordmark{gap:4px;}.review-site .brand-with-wordmark .brand-wordmark,.brand-with-wordmark .brand-wordmark{width:190px;}.review-site .masthead .brand-with-wordmark .brand-logo,.footer-identity .brand-with-wordmark .brand-logo{width:46px;height:46px;}}

/* Compact masthead with original wordmark proportions. */
.review-site .masthead{padding-top:12px;padding-bottom:12px;}
.review-site .masthead>.brand-with-wordmark{align-items:center;}
@media(max-width:600px){.review-site .masthead{padding-top:10px;padding-bottom:10px;}}
