:root{--teal:#064c5a;--teal-dark:#063e47;--ink:#153e43;--green:#a9e6b6;--ice:#f3f5f2;--body:#5b6c6b;--line:#d5dcd6;--font:'DM Sans',Arial,sans-serif;--display:'Manrope',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--ice);color:var(--ink);font-family:var(--font);font-size:16px;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #53ba78;outline-offset:6px}img{display:block;max-width:100%}button{color:inherit}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.svg-library{position:absolute;width:0;height:0;overflow:hidden}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.container{width:89%;max-width:1440px;margin-inline:auto}.section-pad{padding:104px 0}.eyebrow{display:flex;align-items:center;gap:11px;font-size:10px;letter-spacing:2.1px;font-weight:650;margin:0 0 28px;line-height:1.7}.tiny-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--green);flex-shrink:0}.dark-eyebrow .tiny-dot{background:#339c73}.section-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:42px}.section-top .eyebrow{margin:0}.section-number{font-size:9px;letter-spacing:1.5px;opacity:.6;padding-top:4px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--display);font-weight:500}h2{font-size:clamp(40px,4.4vw,68px);letter-spacing:-2.8px;line-height:1.12;margin-bottom:30px}.serif-accent{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-style:italic;letter-spacing:-2.5px}p{line-height:1.65}.section-copy{color:var(--body);font-size:15px;line-height:1.8;max-width:430px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;min-height:56px;padding:16px 24px;border:0;font-size:12px;font-weight:600;transition:background .25s,transform .25s}.button svg{width:21px;height:21px}.button:hover{transform:translateY(-2px)}.button-green{background:var(--green);color:var(--teal-dark)}.button-green:hover{background:#c2f4cc}.text-link{display:inline-flex;align-items:center;gap:24px;font-size:12px;font-weight:500;padding:10px 0}.text-link svg{width:18px;height:18px;transition:transform .25s}.text-link:hover svg{transform:translate(3px,-3px)}.dark-link{color:var(--ink)}.skip-link{position:fixed;top:-70px;left:20px;background:var(--green);padding:14px;z-index:100}.skip-link:focus{top:10px}.site-header{height:105px;position:absolute;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:0 5.5%;z-index:50;color:#fff;gap:30px;transition:background .3s,color .3s,height .3s,box-shadow .3s}.site-header.scrolled{position:fixed;height:79px;background:rgba(243,245,242,.96);color:var(--ink);box-shadow:0 1px 0 rgba(6,76,90,.1);backdrop-filter:blur(16px)}.brand{width:187px;position:relative;display:block;flex-shrink:0}.brand img{width:100%;height:auto}.brand-color{position:absolute;inset:0;opacity:0}.site-header.scrolled .brand-color{opacity:1}.site-header.scrolled .brand-white{opacity:0}.desktop-nav{display:flex;gap:29px;margin-left:auto;margin-right:32px}.desktop-nav a{font-size:11px;position:relative;padding:10px 0}.desktop-nav a::after{content:'';position:absolute;bottom:1px;left:0;width:0;height:1px;background:currentColor;transition:width .25s}.desktop-nav a:hover::after{width:100%}.header-cta{display:flex;align-items:center;gap:28px;font-size:11px;border:1px solid rgba(255,255,255,.45);padding:13px 18px}.header-cta svg{width:17px;height:17px}.site-header.scrolled .header-cta{background:var(--teal);color:#fff;border-color:var(--teal)}.menu-toggle,.mobile-nav{display:none}.scroll-scene{height:310svh;position:relative}.scene-stage{height:100svh;position:sticky;top:0;overflow:hidden;background:var(--ice)}.hero-media{position:absolute;inset:0;overflow:hidden;background:#64796e;will-change:width,height,transform}.hero-media video{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,25,28,.69),rgba(0,25,28,.3) 55%,rgba(0,25,28,.06));opacity:1}.hero-content{position:absolute;left:5.5%;top:50%;transform:translateY(-44%);color:#fff;width:88%;pointer-events:auto;will-change:opacity,transform}.hero-content .eyebrow{font-size:9px;letter-spacing:2.2px;margin-bottom:24px}.hero-content h1{font-size:clamp(50px,6.3vw,96px);font-weight:450;letter-spacing:-4px;line-height:1.09;margin:0 0 25px}.hero-content h1 span{font-family:Georgia,'Times New Roman',serif;font-style:italic;color:#dcf0df;font-weight:400}.hero-description{font-size:14px;line-height:1.75;color:#e1e8e4;margin-bottom:29px}.hero-actions{display:flex;align-items:center;gap:31px}.hero-bottom{position:absolute;bottom:32px;left:5.5%;right:5.5%;display:flex;justify-content:space-between;align-items:center;color:#fff}.scroll-cue{display:flex;align-items:center;gap:15px;font-size:8px;letter-spacing:1.6px}.scroll-line{width:1px;height:38px;position:relative;background:#ffffff40;overflow:hidden}.scroll-line::after{position:absolute;content:'';inset:0;background:#d5f4dc;animation:scroll-line 2.5s ease-in-out infinite}@keyframes scroll-line{0%{transform:translateY(-100%)}70%,100%{transform:translateY(100%)}}.hero-location{margin-left:auto;margin-right:80px}.hero-location span{display:block;font-size:8px;letter-spacing:1.5px;margin-bottom:6px;opacity:.7}.hero-location strong{font-size:11px;font-weight:400}.hero-index{font-size:10px;letter-spacing:1px}.intro-content{position:absolute;top:50%;left:56%;width:38.5%;max-width:610px;transform:translateY(-43%);opacity:0;visibility:hidden}.intro-content .eyebrow{font-size:8px;letter-spacing:1.7px;margin-bottom:21px}.intro-content h2{font-size:clamp(41px,4.5vw,69px);margin-bottom:22px}.intro-content .section-copy{font-size:13px;max-width:370px;margin-bottom:23px}.trust-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 14px;margin:0 0 19px}.trust-grid p{font-size:10px;line-height:1.7;padding-left:25px;margin:0;position:relative}.trust-grid svg{position:absolute;top:1px;left:0;width:16px;height:16px;color:#2e976a}.trust-grid p span{color:#62736f}.intro-content>.text-link{font-size:11px}.video-caption{position:absolute;bottom:12%;left:5.5%;display:flex;gap:10px;align-items:center;font-size:8px;letter-spacing:1.5px;opacity:0}.video-caption .tiny-dot{background:#38a46d}.scene-skip{position:absolute;right:5.5%;bottom:29px;font-size:9px;display:flex;gap:20px;opacity:0;pointer-events:none}.scene-skip span{font-size:18px}.solutions{position:relative;isolation:isolate;overflow:hidden;background:#064c5a;color:#fff;min-height:870px}.solutions-image{position:absolute;inset:0;background:url('assets/instalacao-v2.webp') center right/auto 110% no-repeat;mix-blend-mode:luminosity;opacity:.42;z-index:-2}.solutions::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#064c5a 4%,rgba(6,76,90,.96) 27%,rgba(6,76,90,.65) 54%,rgba(6,76,90,.05));z-index:-1}.solutions .section-number{color:#fff}.solutions h2{font-size:clamp(40px,4.6vw,70px);max-width:850px;margin-bottom:22px}.solutions-lead{font-size:13px;color:#c1d5d5;line-height:1.8;margin-bottom:37px}.solutions-list{max-width:630px}.solution-row{display:flex;gap:21px;border-top:1px solid rgba(220,240,239,.2);padding:22px 0;align-items:flex-start;transition:padding .3s}.solution-row:last-child{border-bottom:1px solid rgba(220,240,239,.2)}.row-number{font-size:9px;color:#a6c6c9;padding-top:6px}.solution-row div{flex:1}.solution-row h3{font-size:19px;letter-spacing:-.4px;margin:0 0 5px}.solution-row p{font-size:11px;color:#c4d8d9;margin:0;max-width:450px;line-height:1.7}.solution-row>svg{width:19px;height:19px;margin-top:4px;color:var(--green)}.solution-row:hover{padding-left:8px}.projects{position:relative;overflow:hidden;background:var(--ice);isolation:isolate;padding-bottom:69px}.projects-ambient{position:absolute;inset:0;z-index:-1;opacity:.11;filter:blur(45px);transform:scale(1.12);pointer-events:none}.ambient-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity .8s ease}.ambient-slide.active{opacity:1}.projects-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:41px}.projects-heading h2{margin:0}.projects-heading>p{font-size:12px;color:var(--body);margin:0 0 6px;max-width:250px}.project-gallery{position:relative;width:100%;display:flex;align-items:center;justify-content:center}.gallery-frame{position:relative;width:min(66vw,790px);aspect-ratio:1.5;overflow:hidden;background:#dbe2da;box-shadow:0 16px 50px #143c3d0c}.project-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.035);transition:opacity .8s ease,transform 3.8s ease}.project-slide.active{opacity:1;transform:scale(1)}.gallery-label{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:50px 24px 20px;color:#fff;background:linear-gradient(transparent,rgba(0,25,28,.58));z-index:2}.gallery-label span{font-size:8px;letter-spacing:1.8px}.gallery-label svg{width:20px;height:20px}.gallery-arrow{width:49px;height:49px;display:flex;align-items:center;justify-content:center;border:1px solid #8eaaa86b;background:transparent;border-radius:50%;transition:background .25s}.gallery-arrow:hover{background:#fff9}.gallery-prev{position:absolute;left:0}.gallery-prev svg{transform:rotate(180deg)}.gallery-next{position:absolute;right:0}.gallery-note{position:absolute;right:-29px;top:50%;transform:translateY(-50%) rotate(-90deg);display:flex;align-items:center;gap:20px;font-size:7px;letter-spacing:1.5px;line-height:1.7}.vertical-rule{width:45px;height:1px;background:#547c7466}.gallery-next{right:18px}.gallery-prev{left:18px}.gallery-note{right:-49px;top:28%}.gallery-footer{display:flex;align-items:center;justify-content:space-between;width:min(66vw,790px);margin:27px auto 0}.gallery-count{display:flex;align-items:center;gap:13px;font-size:9px;font-weight:500}.gallery-count>span:last-child{opacity:.4}.count-line{height:1px;width:30px;background:#aac1b6}.gallery-dots{display:flex;align-items:center;gap:9px}.gallery-dot{padding:0;width:6px;height:6px;border:0;border-radius:50%;background:#b1c1b5;transition:background .3s,width .3s}.gallery-dot.active{background:var(--teal);width:20px;border-radius:8px}.gallery-pause{background:none;border:0;display:flex;align-items:center;gap:6px;padding:5px 0;font-size:9px}.pause-icon{font-size:12px;letter-spacing:-2px}.audience{border-top:1px solid #dfe4dc;padding-top:96px;background:#f3f5f2}.audience-heading{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:55px}.audience-heading .eyebrow{padding-top:12px}.audience-heading h2{width:58%;margin:0;font-size:clamp(38px,4vw,62px)}.audience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0}.audience-grid article{border-left:1px solid var(--line);padding:0 33px}.audience-grid article:first-child{padding-left:0;border-left:0}.audience-grid article:last-child{padding-right:0}.audience-icon{display:block;font-size:8px;letter-spacing:1.5px;color:#739085;margin-bottom:24px}.audience-grid h3{font-size:21px;letter-spacing:-.7px;margin-bottom:18px}.audience-grid p{font-size:12px;color:var(--body);max-width:310px;margin-bottom:20px}.audience-grid .text-link{font-size:10px;gap:16px}.process{background:var(--teal);color:#fff;overflow:hidden}.process-heading{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:65px}.process-heading h2{margin:0}.process-heading>p{font-size:12px;color:#b4cccf;margin-bottom:7px}.process-steps{display:grid;grid-template-columns:repeat(4,1fr);margin-bottom:45px;gap:30px}.process-step{min-width:0}.step-marker{display:flex;justify-content:space-between;align-items:center;padding:20px 0;border-top:1px solid #ffffff42;margin-bottom:18px;position:relative}.step-marker::before{content:'';height:2px;background:var(--green);width:0;position:absolute;top:-1px;left:0;transition:width .8s ease calc(var(--step)*.17s + .2s)}.step-marker span{font-family:var(--display);font-size:13px;color:var(--green)}.step-marker svg{width:19px;height:19px;color:#bcd4d3}.process-step h3{font-size:21px;line-height:1.4;letter-spacing:-.5px;margin-bottom:15px}.process-step p{font-size:12px;line-height:1.9;color:#b4cccf;max-width:235px;margin:0}.js-enabled .process-step{opacity:0;transform:translateY(38px);transition:opacity .8s ease calc(var(--step)*.17s),transform .8s cubic-bezier(.16,1,.3,1) calc(var(--step)*.17s)}.js-enabled .process-steps.is-visible .process-step{opacity:1;transform:translateY(0)}.process-steps.is-visible .step-marker::before{width:100%}.process>.container>.button{font-size:11px}.materials{background:#f3f5f2}.materials-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:48px}.materials-heading h2{margin:0}.materials-heading .section-copy{width:37%;max-width:380px;font-size:13px;margin:0 0 5px}.material-table{border-collapse:collapse;width:100%;text-align:left;font-size:12px}.material-table th,.material-table td{padding:22px 24px;border-bottom:1px solid var(--line);vertical-align:top;line-height:1.7}.material-table tr>*:first-child{padding-left:0;width:22%}.material-table thead th{font-family:var(--display);font-size:19px;letter-spacing:-.5px;font-weight:500;padding-bottom:25px;border-bottom:1px solid #52746a}.material-table thead th:first-child{font-family:var(--font);font-size:8px;letter-spacing:1.5px;font-weight:500;vertical-align:middle}.material-table tbody th{font-weight:500}.material-table td{color:var(--body);width:39%}.material-table td:nth-child(2){background:rgba(220,230,218,.23)}.aluminum-note{display:flex;align-items:center;gap:15px;padding-top:25px}.aluminum-note>svg{color:#3c9a6c;width:20px;height:20px}.aluminum-note p{font-size:11px;color:var(--body);margin:0}.aluminum-note strong{color:var(--ink);font-weight:500}.faq{background:#e8eee6;padding-top:94px;padding-bottom:103px}.faq-layout{display:grid;grid-template-columns:1fr 1.3fr;gap:8%}.faq h2{font-size:clamp(40px,4vw,62px);margin-bottom:25px}.faq .text-link{font-size:11px}.faq-list{border-top:1px solid #b9c8be}.faq details{border-bottom:1px solid #b9c8be}.faq summary{list-style:none;display:flex;gap:25px;align-items:center;justify-content:space-between;padding:23px 0;font-size:13px;cursor:pointer}.faq summary::-webkit-details-marker{display:none}.faq summary>span{width:12px;height:12px;position:relative;flex-shrink:0}.faq summary>span::after,.faq summary>span::before{content:'';position:absolute;background:var(--teal);top:6px;left:0;width:12px;height:1px;transition:transform .2s}.faq summary>span::after{transform:rotate(90deg)}.faq details[open] summary>span::after{transform:rotate(0)}.faq details>p{font-size:12px;color:var(--body);padding:0 35px 24px 0;margin:0;line-height:1.9}.contact{background:var(--teal);color:#fff;padding-top:107px;padding-bottom:105px}.contact-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:10%}.contact h2{font-size:clamp(40px,4.2vw,65px)}.contact-copy>p:not(.eyebrow){color:#c0d2d3;font-size:13px}.contact-phone{display:inline-flex;align-items:center;gap:34px;font-family:var(--display);font-size:21px;margin-top:15px;letter-spacing:-.5px}.contact-phone svg{width:20px;height:20px}.contact form{padding-top:42px}.contact label{display:block;font-size:10px;color:#d9e6e3;font-weight:500;margin-bottom:27px}.contact input,.contact select{display:block;width:100%;color:#fff;background:transparent;border:0;border-bottom:1px solid #6d999d;border-radius:0;padding:14px 0;font-size:12px;min-height:47px;outline-offset:1px}.contact input::placeholder{color:#a0bdbe;font-weight:400}.contact select:invalid{color:#a0bdbe}.contact select option{background:var(--teal);color:#fff}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:23px}.contact form .button{width:100%;margin-top:5px;font-size:12px}.form-note{font-size:9px;color:#a1c0bf;margin:15px 0 0;text-align:center;line-height:1.8}.footer{background:var(--teal-dark);color:#fff;padding:55px 0 22px}.footer-top{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:40px;padding-bottom:45px}.footer-brand{max-width:180px}.footer-brand img{width:100%;height:auto}.footer-top>p{font-size:12px;color:#b0c8c9;margin:0;line-height:1.8}.footer-links{display:flex;flex-direction:column;gap:14px;align-items:flex-end}.footer-links>a{display:flex;justify-content:space-between;gap:30px;font-size:11px}.footer-links svg{width:15px;height:15px}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #ffffff21;padding-top:22px;font-size:8px;color:#9bb9b9;letter-spacing:.2px}.footer-bottom p{margin:0}
@media(min-width:1600px){.hero-content{left:max(5.5%,calc((100vw - 1440px)/2))}.hero-content h1{font-size:100px}.hero-content .eyebrow{font-size:11px}.hero-description{font-size:17px}.hero-actions .button{font-size:14px}.intro-content .section-copy{font-size:16px}.trust-grid p{font-size:13px}.intro-content>.text-link{font-size:13px}.intro-content .eyebrow{font-size:10px}}
@media(max-width:1050px){.desktop-nav{gap:19px;margin-right:0}.site-header{gap:22px}.brand{width:160px}.header-cta{gap:17px;padding:12px 13px}.hero-content h1{font-size:7.2vw;letter-spacing:-3px}.hero-content .eyebrow{font-size:8px}.intro-content h2{font-size:5vw}.intro-content .eyebrow{font-size:7px;letter-spacing:1.2px}.intro-content .section-copy{font-size:12px}.trust-grid{gap:14px 7px}.trust-grid p{font-size:9px;padding-left:20px}.trust-grid svg{width:13px;height:13px}.solutions-list{max-width:570px}.projects-heading>p{max-width:200px;font-size:11px}.audience-grid article{padding-inline:24px}.audience-grid h3{font-size:18px}.process-steps{gap:20px}.process-step h3{font-size:18px}.process-step p{font-size:11px}.contact-layout{gap:6%}.contact h2{font-size:4.5vw}}
@media(max-width:760px){html{scroll-padding-top:76px}.section-pad{padding:72px 0}.container{width:88%}.site-header{height:86px;padding:0 6%;gap:16px}.site-header.scrolled{height:72px}.brand{width:142px}.desktop-nav{display:none}.header-cta{font-size:9px;margin-left:auto;gap:10px;padding:10px 11px}.header-cta svg{width:14px;height:14px}.menu-toggle{display:flex;background:none;border:0;padding:8px 0 8px 5px;width:25px;flex-direction:column;gap:5px;z-index:70}.menu-toggle span{height:1px;background:currentColor;display:block;width:20px;transition:transform .25s}.menu-open .menu-toggle span:first-child{transform:translateY(3px) rotate(45deg)}.menu-open .menu-toggle span:last-child{transform:translateY(-3px) rotate(-45deg)}.site-header.menu-active{position:fixed;color:var(--ink);background:var(--ice)}.site-header.menu-active .brand-white{opacity:0}.site-header.menu-active .brand-color{opacity:1}.site-header.menu-active .header-cta{background:var(--teal);color:white}.mobile-nav{display:flex;position:fixed;inset:72px 0 0;z-index:45;background:var(--ice);padding:50px 8%;flex-direction:column;gap:26px;visibility:hidden;opacity:0;transform:translateY(-12px);transition:opacity .3s,transform .3s,visibility .3s}.mobile-nav a{font-family:var(--display);font-size:28px;letter-spacing:-1px}.menu-open .mobile-nav{visibility:visible;opacity:1;transform:translateY(0)}.scroll-scene{height:300svh}.hero-content{left:6%;top:48%;transform:translateY(-43%);width:88%}.hero-content h1{font-size:clamp(42px,9vw,67px);letter-spacing:-2.5px;line-height:1.13;margin-bottom:24px}.hero-content .eyebrow{font-size:7px;letter-spacing:1.6px;gap:8px;margin-bottom:26px}.hero-description{font-size:12px;line-height:1.9;margin-bottom:27px}.hero-actions{gap:19px;flex-wrap:wrap}.hero-actions .button{min-height:51px;font-size:10px;gap:21px;padding:15px 18px}.hero-actions .text-link{font-size:10px;gap:12px}.hero-actions .text-link svg{width:16px}.hero-bottom{left:6%;right:6%;bottom:28px}.scroll-cue{font-size:7px;gap:10px}.hero-location{display:none}.hero-index{font-size:8px}.hero-shade{background:linear-gradient(90deg,rgba(0,25,28,.65),rgba(0,25,28,.32)),linear-gradient(0deg,rgba(0,25,28,.3),transparent)}.intro-content{left:6%;width:88%;top:auto;bottom:6%;transform:none;max-width:none}.intro-content .eyebrow{font-size:7px;letter-spacing:1.4px;margin-bottom:14px}.intro-content h2{font-size:clamp(32px,8.4vw,44px);letter-spacing:-1.6px;line-height:1.1;margin-bottom:12px}.intro-content h2 br:nth-of-type(2){display:none}.intro-content .section-copy{font-size:11px;line-height:1.7;max-width:100%;margin-bottom:15px}.trust-grid{gap:10px 15px;margin-bottom:8px}.trust-grid p{font-size:9px;line-height:1.5}.intro-content>.text-link{font-size:10px;padding:7px 0}.video-caption,.scene-skip{display:none}.section-top{margin-bottom:32px}.eyebrow{font-size:8px;letter-spacing:1.5px;gap:9px}.section-number{font-size:6px;letter-spacing:.8px;padding-top:6px}.tiny-dot{width:5px;height:5px}h2{font-size:40px;letter-spacing:-1.7px}.serif-accent{letter-spacing:-1.5px}.solutions{min-height:auto}.solutions-image{background-size:auto 100%;background-position:65% center;opacity:.3}.solutions::after{background:linear-gradient(90deg,rgba(6,76,90,.96),rgba(6,76,90,.71) 70%,rgba(6,76,90,.48))}.solutions h2{font-size:10vw;line-height:1.15;letter-spacing:-2px}.solutions-lead{font-size:11px;margin-bottom:31px}.solutions-list{max-width:100%}.solution-row{padding:20px 0;gap:16px}.solution-row h3{font-size:17px}.solution-row p{font-size:10px;max-width:93%;line-height:1.75}.row-number{font-size:8px}.solution-row>svg{width:17px;height:17px}.projects-heading{display:block;margin-bottom:30px}.projects-heading h2{font-size:10vw;margin-bottom:20px}.projects-heading>p{font-size:11px;max-width:none}.projects-heading>p br{display:none}.gallery-frame{width:100%;aspect-ratio:1}.gallery-note{display:none}.gallery-prev,.gallery-next{position:absolute;z-index:3;top:calc(50% - 19px);width:37px;height:37px;background:#f3f5f2e6;box-shadow:0 2px 7px #143c3d17;border:0}.gallery-prev{left:-13px}.gallery-next{right:-13px}.gallery-arrow svg{width:17px;height:17px}.gallery-label{padding:40px 19px 18px}.gallery-label span{font-size:7px}.gallery-footer{width:100%;margin-top:22px}.gallery-dots{gap:7px}.gallery-dot{width:5px;height:5px}.gallery-dot.active{width:15px}.gallery-count{gap:8px;font-size:8px}.count-line{width:20px}.gallery-pause{font-size:8px}.projects-ambient{opacity:.09}.audience-heading{display:block;margin-bottom:35px}.audience-heading .eyebrow{padding:0}.audience-heading h2{font-size:10vw;width:100%;letter-spacing:-2px}.audience-grid{grid-template-columns:1fr;gap:31px}.audience-grid article,.audience-grid article:first-child{border:0;border-top:1px solid var(--line);padding:24px 0 0}.audience-icon{font-size:7px;margin-bottom:13px}.audience-grid h3{font-size:22px;margin-bottom:13px}.audience-grid p{font-size:12px;max-width:none;margin-bottom:7px}.audience-grid .text-link{font-size:11px}.process-heading{display:block;margin-bottom:39px}.process-heading h2{font-size:10vw;margin-bottom:20px}.process-heading>p{font-size:11px}.process-heading>p br{display:none}.process-steps{grid-template-columns:1fr 1fr;gap:32px 23px;margin-bottom:34px}.step-marker{padding:15px 0;margin-bottom:10px}.step-marker span{font-size:12px}.step-marker svg{width:17px;height:17px}.process-step h3{font-size:17px;line-height:1.4;margin-bottom:11px}.process-step p{font-size:10px;line-height:1.8}.process>.container>.button{font-size:10px;min-height:50px}.materials-heading{display:block;margin-bottom:28px}.materials-heading h2{font-size:10vw;margin-bottom:20px}.materials-heading .section-copy{font-size:12px;width:100%;max-width:none}.material-table-wrap{overflow:auto}.material-table{min-width:560px;font-size:11px}.material-table th,.material-table td{padding:19px 16px}.material-table thead th{font-size:15px}.material-table thead th:first-child{font-size:7px}.aluminum-note{align-items:flex-start;gap:10px}.aluminum-note p{font-size:10px}.aluminum-note strong{display:block}.aluminum-note>svg{width:17px;height:17px}.faq-layout{grid-template-columns:1fr;gap:34px}.faq h2{font-size:10vw;margin-bottom:15px}.faq .eyebrow{margin-bottom:20px}.faq summary{font-size:12px;padding:22px 0;gap:20px;line-height:1.7}.faq details>p{font-size:11px}.contact-layout{grid-template-columns:1fr;gap:24px}.contact h2{font-size:11vw;margin-bottom:24px}.contact-copy>p:not(.eyebrow){font-size:12px}.contact-phone{font-size:20px;margin-top:7px}.contact form{padding-top:11px}.contact label{font-size:10px}.form-row{grid-template-columns:1fr;gap:0}.contact input,.contact select{font-size:12px}.contact form .button{font-size:11px}.footer{padding-top:42px}.footer-top{grid-template-columns:1fr 1fr;gap:26px;padding-bottom:31px}.footer-brand{max-width:146px}.footer-top>p{font-size:10px}.footer-links{grid-column:span 2;flex-direction:row;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #ffffff15;padding-top:23px}.footer-links>a{font-size:10px;gap:13px}.footer-bottom{font-size:7px;gap:20px;align-items:center;line-height:1.8}.footer-bottom p{max-width:210px}}
@media(max-height:700px) and (min-width:761px){.hero-content h1{font-size:9.5vh}.hero-content .eyebrow{margin-bottom:18px}.hero-description{margin-bottom:20px}.hero-bottom{bottom:20px}.intro-content{top:53%}.intro-content h2{font-size:7vh;margin-bottom:14px}.intro-content .eyebrow{margin-bottom:12px}.intro-content .section-copy{font-size:12px;margin-bottom:15px}.trust-grid{gap:10px;margin-bottom:10px}.video-caption{bottom:8%}}
@media(max-height:710px) and (max-width:760px){.intro-content{bottom:4%}.intro-content .eyebrow{font-size:6px;margin-bottom:8px}.intro-content h2{font-size:30px;line-height:1.04;margin-bottom:8px}.intro-content .section-copy{font-size:10px;margin-bottom:9px}.trust-grid{gap:7px;margin-bottom:3px}.trust-grid p{font-size:8px}.intro-content>.text-link{font-size:9px}.hero-content h1{font-size:9.5vw}.hero-content .eyebrow{margin-bottom:20px}.hero-content{top:49%}.hero-description{font-size:11px;margin-bottom:20px}.hero-bottom{bottom:17px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}.js-enabled .process-step{opacity:1;transform:none}.scroll-line::after{animation:none}.project-slide{transform:none}.hero-media{will-change:auto}}

.header-cta{white-space:nowrap}@media(max-width:760px){.brand{width:135px}}
.gallery-dots{gap:2px}.gallery-dot,.gallery-dot.active{width:24px;height:24px;border-radius:0;background:transparent;position:relative}.gallery-dot::after{content:'';position:absolute;top:50%;left:50%;width:5px;height:5px;border-radius:8px;background:#b1c1b5;transform:translate(-50%,-50%);transition:width .3s,background .3s}.gallery-dot.active::after{width:18px;background:var(--teal)}
@media(max-width:760px){.gallery-footer{display:grid;grid-template-columns:1fr 1fr;row-gap:10px}.gallery-dots{grid-column:1/-1;grid-row:2;justify-content:center}.gallery-pause{justify-self:end}.gallery-dot,.gallery-dot.active{width:26px;height:26px}}

/* Compact folds: keep each section's complete composition within the viewport. */
:root { --header-height: 68px; }
html { scroll-padding-top: var(--header-height); }
.site-header { height: 90px; }
.site-header.scrolled { height: var(--header-height); }
.site-header.scrolled .brand { width: 160px; }
.section-pad {
  min-height: calc(100svh - var(--header-height));
  padding: clamp(28px, 4.5svh, 52px) 0;
  display: flex;
  align-items: center;
}
p { line-height: 1.5; }
.section-pad h2 { font-size: clamp(36px, 4vw, 60px); line-height: 1.05; margin-bottom: 16px; }
.section-top { margin-bottom: 22px; }
.eyebrow { margin-bottom: 18px; line-height: 1.35; }
.section-copy { line-height: 1.5; }
.button { min-height: 48px; padding: 13px 22px; }
.hero-content h1 { line-height: 1.035; margin-bottom: 20px; }
.hero-content .eyebrow { margin-bottom: 20px; }
.hero-description { line-height: 1.5; margin-bottom: 22px; }
.intro-content { top: 51%; }
.intro-content h2 { font-size: clamp(37px, 4.1vw, 61px); line-height: 1.03; margin-bottom: 16px; }
.intro-content .section-copy { line-height: 1.5; margin-bottom: 18px; }
.trust-grid { gap: 14px 12px; margin-bottom: 14px; }
.trust-grid p { line-height: 1.45; }
.video-caption { bottom: 10%; }

.solutions { min-height: calc(100svh - var(--header-height)); }
.solutions-image { background-image: url('assets/instalacao-v2.webp'); }
.solutions h2 { margin-bottom: 14px; }
.solutions-lead { line-height: 1.5; margin-bottom: 20px; }
.solution-row { padding: 13px 0; }
.solution-row h3 { margin-bottom: 3px; line-height: 1.2; }
.solution-row p { line-height: 1.45; }

/* Five images share one stage. The central image remains the focal point. */
.projects-heading { margin-bottom: 24px; align-items: center; }
.projects-heading h2 { margin: 0; }
.projects-heading > p { line-height: 1.5; margin-bottom: 0; }
.project-gallery {
  --slide-height: clamp(208px, 34svh, 330px);
  --slide-width: calc(var(--slide-height) * 1.42);
  height: var(--slide-height);
}
.gallery-frame {
  width: var(--slide-width);
  height: var(--slide-height);
  flex: 0 0 var(--slide-width);
  aspect-ratio: auto;
  z-index: 3;
  border-radius: 3px;
}
.project-slide { transform: none; transition: opacity 1.1s cubic-bezier(.4, 0, .2, 1); }
.ambient-slide { transition: opacity 1.3s ease-in-out; }
.gallery-label { padding: 35px 18px 14px; }
.gallery-preview {
  position: absolute;
  top: 50%;
  width: calc(var(--slide-width) * .76);
  height: calc(var(--slide-height) * .78);
  padding: 0;
  border: 0;
  border-radius: 3px;
  background: transparent;
  transform: translate(-50%, -50%);
  z-index: 2;
}
.gallery-preview img {
  width: 100%; height: 100%; object-fit: cover;
  border-radius: inherit; opacity: .48; filter: blur(1.2px);
  transition: opacity .3s, filter .3s;
}
.preview-previous { left: calc(50% - var(--slide-width) * .86); }
.preview-next { left: calc(50% + var(--slide-width) * .86); }
.preview-previous-far, .preview-next-far {
  width: calc(var(--slide-width) * .58);
  height: calc(var(--slide-height) * .58);
  z-index: 1;
}
.preview-previous-far { left: calc(50% - var(--slide-width) * 1.45); }
.preview-next-far { left: calc(50% + var(--slide-width) * 1.45); }
.preview-previous-far img, .preview-next-far img { opacity: .27; filter: blur(2px); }
.gallery-preview:hover img, .gallery-preview:focus-visible img { opacity: .75; filter: blur(.3px); }
.gallery-arrow {
  top: 50%; transform: translateY(-50%); z-index: 4;
  width: 44px; height: 44px; background: #f3f5f2e8;
}
.gallery-prev { left: -2.8vw; }
.gallery-next { right: -2.8vw; }
.gallery-footer { width: min(100%, 520px); margin-top: 16px; }
.gallery-pause { min-height: 32px; }

.audience-heading { margin-bottom: 30px; }
.audience-heading h2 { margin: 0; }
.audience-heading .eyebrow { padding-top: 6px; }
.audience-icon { margin-bottom: 16px; }
.audience-grid h3 { line-height: 1.2; margin-bottom: 12px; }
.audience-grid p { line-height: 1.5; margin-bottom: 10px; }
.audience-grid .text-link { padding: 7px 0; }

.process { position: relative; isolation: isolate; }
.process::before {
  content: ''; position: absolute; inset: 0; z-index: -1;
  background: url('assets/pattern-geometric.webp') center / cover;
  mix-blend-mode: multiply; opacity: .24; pointer-events: none;
}
.process-heading { margin-bottom: 30px; }
.process-heading h2 { margin-bottom: 0; }
.process-heading > p { line-height: 1.5; }
.process-steps { margin-bottom: 26px; }
.step-marker { padding: 12px 0; margin-bottom: 12px; }
.process-step h3 { line-height: 1.2; margin-bottom: 10px; }
.process-step p { line-height: 1.5; }
.js-enabled .process-step { transform: translateY(20px); transition-duration: .5s; transition-delay: 0s; }
.step-marker::before { transition-delay: 0s; }

.materials-heading { margin-bottom: 26px; }
.materials-heading h2 { margin-bottom: 0; }
.materials-heading .section-copy { line-height: 1.5; }
.material-table th, .material-table td { padding: 14px 22px; line-height: 1.45; }
.material-table thead th { padding-bottom: 17px; }
.aluminum-note { padding-top: 18px; }
.aluminum-note p { line-height: 1.5; }
.faq h2 { margin-bottom: 16px; }
.faq summary { padding: 18px 0; line-height: 1.45; }
.faq details > p { line-height: 1.5; padding-bottom: 18px; }
.contact form { padding-top: 16px; }
.contact label { margin-bottom: 17px; }
.contact input, .contact select { min-height: 44px; padding: 10px 0; }
.contact-copy > p:not(.eyebrow) { line-height: 1.5; margin-bottom: 12px; }
.contact-phone { margin-top: 10px; }
.form-note { margin-top: 10px; line-height: 1.5; }
.footer { padding: 34px 0 18px; }
.footer-top { grid-template-columns: .9fr 1.15fr 1.2fr; align-items: start; gap: 32px; padding-bottom: 25px; }
.footer-top > div { min-width: 0; }
.footer-brand { display: block; }
.footer-top h3 { font-family: var(--font); font-size: 10px; font-weight: 500; letter-spacing: 1.2px; text-transform: uppercase; color: #a8c7c5; line-height: 1.4; margin: 0 0 10px; }
.footer-top p, .footer-top address, .footer-email { font-size: 12px; line-height: 1.6; font-style: normal; margin: 0; }
.footer-identity p { color: #b0c8c9; margin-top: 14px; }
.footer-map { display: inline-flex; align-items: center; gap: 9px; font-size: 11px; color: var(--green); padding: 9px 0; }
.footer-map svg { width: 15px; height: 15px; }
.footer-top .footer-hours-label { margin-top: 14px; margin-bottom: 6px; }
.footer-email { overflow-wrap: anywhere; }
.footer-contact .instagram-link { display: flex; align-items: center; gap: 9px; width: fit-content; margin-top: 22px; font-size: 12px; }
.footer-map:hover, .footer-email:hover, .footer-contact .instagram-link:hover { text-decoration: underline; text-underline-offset: 4px; }
.footer-bottom { padding-top: 16px; }
.footer-links .instagram-link { gap: 9px; justify-content: flex-start; }
.instagram-link img { width: 20px; height: 20px; object-fit: contain; }

@media (min-width: 761px) and (max-height: 800px) {
  .section-pad { padding-top: 26px; padding-bottom: 26px; }
  .section-pad h2 { font-size: clamp(34px, 6.9svh, 54px); }
  .section-top { margin-bottom: 18px; }
  .hero-content h1 { font-size: min(6.3vw, 10.2svh); }
  .intro-content h2 { font-size: min(4.3vw, 7.3svh); }
  .intro-content .eyebrow { margin-bottom: 14px; }
  .intro-content .section-copy { margin-bottom: 14px; }
  .solutions-lead { margin-bottom: 16px; }
  .solution-row { padding: 11px 0; }
  .solution-row h3 { font-size: 18px; }
  .process-heading { margin-bottom: 25px; }
  .process-steps { margin-bottom: 22px; }
  .audience-heading { margin-bottom: 24px; }
  .materials-heading { margin-bottom: 22px; }
  .material-table th, .material-table td { padding-top: 12px; padding-bottom: 12px; }
}

@media (max-width: 1050px) and (min-width: 761px) {
  .section-pad h2 { font-size: clamp(34px, 4.3vw, 46px); }
  .project-gallery { --slide-height: clamp(208px, 31svh, 280px); }
  .projects-heading > p { max-width: 210px; }
  .gallery-preview { width: calc(var(--slide-width) * .66); }
  .preview-previous { left: calc(50% - var(--slide-width) * .72); }
  .preview-next { left: calc(50% + var(--slide-width) * .72); }
  .preview-previous-far, .preview-next-far { width: calc(var(--slide-width) * .48); }
  .preview-previous-far { left: calc(50% - var(--slide-width) * 1.13); }
  .preview-next-far { left: calc(50% + var(--slide-width) * 1.13); }
}

@media (max-width: 760px) {
  .site-header { height: 78px; }
  .site-header.scrolled .brand { width: 135px; }
  .section-pad { min-height: 0; padding: 28px 0; }
  .section-pad h2 { font-size: clamp(30px, 8.3vw, 43px); line-height: 1.04; margin-bottom: 13px; }
  .section-top { margin-bottom: 17px; }
  .eyebrow { line-height: 1.35; margin-bottom: 14px; }
  .hero-content h1 { font-size: clamp(38px, 9vw, 64px); margin-bottom: 17px; line-height: 1.04; }
  .hero-content .eyebrow { margin-bottom: 17px; }
  .hero-description { line-height: 1.5; margin-bottom: 20px; }
  .hero-actions .button { min-height: 48px; }
  .intro-content { top: auto; bottom: 5%; }
  .intro-content h2 { font-size: clamp(30px, 8vw, 42px); line-height: 1.03; margin-bottom: 11px; }
  .intro-content .section-copy { line-height: 1.45; margin-bottom: 11px; }
  .trust-grid { gap: 10px 12px; margin-bottom: 7px; }
  .solutions { min-height: 0; }
  .solutions-lead { line-height: 1.4; margin-bottom: 14px; }
  .solution-row { padding: 11px 0; gap: 13px; }
  .solution-row h3 { font-size: 16px; margin-bottom: 4px; }
  .solution-row p { font-size: 11px; line-height: 1.4; }
  .projects-content.container { width: 100%; max-width: none; }
  .projects-content > .section-top, .projects-heading { width: 88%; margin-left: auto; margin-right: auto; }
  .projects-heading { margin-bottom: 20px; }
  .projects-heading h2 { margin-bottom: 11px; }
  .projects-heading > p { line-height: 1.4; }
  .projects.section-pad { padding-top: 44px; padding-bottom: 32px; }
  .project-gallery { --slide-width: min(62vw, 330px); --slide-height: var(--slide-width); }
  .gallery-frame { aspect-ratio: 1; }
  .gallery-preview { width: calc(var(--slide-width) * .36); height: calc(var(--slide-height) * .73); }
  .preview-previous { left: calc(50% - var(--slide-width) * .52); }
  .preview-next { left: calc(50% + var(--slide-width) * .52); }
  .preview-previous-far, .preview-next-far { width: calc(var(--slide-width) * .26); height: calc(var(--slide-height) * .52); }
  .preview-previous-far { left: calc(50% - var(--slide-width) * .74); }
  .preview-next-far { left: calc(50% + var(--slide-width) * .74); }
  .gallery-arrow { width: 36px; height: 36px; top: calc(100% + 34px); background: transparent; box-shadow: none; border: 1px solid #8eaaa86b; }
  .gallery-prev { left: 6%; }
  .gallery-next { right: 6%; }
  .gallery-label { padding: 25px 10px 10px; }
  .gallery-label span { font-size: 6px; letter-spacing: .8px; }
  .gallery-label svg { width: 14px; height: 14px; }
  .gallery-footer { width: 70%; margin-top: 14px; row-gap: 2px; }
  .gallery-count { padding-left: 8px; }
  .gallery-pause { padding-right: 8px; }
  .gallery-dots { gap: 0; }
  .gallery-dot, .gallery-dot.active { width: 25px; height: 25px; }
  .audience-heading { margin-bottom: 16px; }
  .audience-heading .eyebrow { margin-bottom: 11px; }
  .audience-heading h2 { margin-bottom: 0; }
  .audience-grid { gap: 10px; }
  .audience-grid article, .audience-grid article:first-child { padding-top: 11px; }
  .audience-icon { font-size: 7px; margin-bottom: 5px; }
  .audience-grid h3 { font-size: 18px; margin-bottom: 6px; }
  .audience-grid p { font-size: 11px; line-height: 1.4; margin-bottom: 3px; }
  .audience-grid .text-link { font-size: 10px; line-height: 1.3; padding: 5px 0; }
  .process-heading { margin-bottom: 19px; }
  .process-heading h2 { margin-bottom: 11px; }
  .process-heading > p { font-size: 11px; line-height: 1.4; margin: 0; }
  .process-steps { gap: 18px 20px; margin-bottom: 20px; }
  .step-marker { padding: 9px 0; margin-bottom: 8px; }
  .process-step h3 { font-size: 16px; margin-bottom: 7px; line-height: 1.15; }
  .process-step p { font-size: 11px; line-height: 1.4; }
  .materials-heading { margin-bottom: 17px; }
  .materials-heading h2 { margin-bottom: 12px; }
  .materials-heading .section-copy { font-size: 11px; line-height: 1.4; }
  .material-table-wrap { overflow: visible; }
  .material-table { min-width: 0; width: 100%; table-layout: fixed; font-size: 10px; }
  .material-table th, .material-table td { padding: 9px 7px; line-height: 1.35; overflow-wrap: anywhere; }
  .material-table thead th { font-size: 11px; letter-spacing: -.2px; padding-bottom: 11px; }
  .material-table thead th:first-child { font-size: 6px; letter-spacing: .7px; }
  .aluminum-note { padding-top: 12px; }
  .aluminum-note p { line-height: 1.4; }
  .faq-layout { gap: 19px; }
  .faq .eyebrow { margin-bottom: 12px; }
  .faq h2 { margin-bottom: 9px; }
  .faq .text-link { padding: 6px 0; }
  .faq summary { padding: 14px 0; font-size: 12px; line-height: 1.4; }
  .faq details > p { font-size: 11px; line-height: 1.4; padding-bottom: 13px; }
  .contact-layout { gap: 16px; }
  .contact h2 { font-size: clamp(30px, 8vw, 40px); margin-bottom: 10px; }
  .contact-copy > p:not(.eyebrow) { font-size: 11px; line-height: 1.4; margin-bottom: 7px; }
  .contact-phone { font-size: 18px; margin-top: 5px; }
  .contact form { padding-top: 0; }
  .form-row { grid-template-columns: 1fr 1fr; gap: 16px; }
  .contact label { margin-bottom: 12px; font-size: 10px; }
  .contact input, .contact select { font-size: 11px; min-height: 42px; padding: 9px 0; min-width: 0; }
  .contact form .button { min-height: 44px; margin-top: 3px; }
  .form-note { font-size: 8px; margin-top: 8px; line-height: 1.4; }
  .footer { padding: 25px 0 16px; }
  .footer-top { grid-template-columns: 1fr; padding-bottom: 22px; gap: 25px; }
  .footer-brand { max-width: 160px; }
  .footer-top p, .footer-top address, .footer-email { font-size: 12px; }
  .footer-top h3 { margin-bottom: 7px; }
  .footer-contact .instagram-link { margin-top: 17px; }
  .footer-links { padding-top: 17px; }
  .footer-links > a { font-size: 9px; }
  .instagram-link img { width: 18px; height: 18px; }
}

@media (max-width: 760px) and (max-height: 710px) {
  .section-pad { padding-top: 21px; padding-bottom: 21px; }
  .section-pad h2 { font-size: 30px; }
  .section-top { margin-bottom: 14px; }
  .intro-content { bottom: 4%; }
  .intro-content h2 { font-size: 29px; }
  .intro-content .eyebrow { margin-bottom: 8px; }
  .intro-content .section-copy { font-size: 11px; }
  .trust-grid p { font-size: 9px; }
}

@media (prefers-reduced-motion: reduce) {
  .js-enabled .process-step { transform: none; }
  .project-slide { transition: none; }
}

/* Project photos zoom out during their three-second presentation. */
html { scrollbar-gutter: stable; }
.gallery-frame { border: 0; padding: 0; cursor: zoom-in; text-align: left; color: inherit; }
.project-slide { transform: scale(1); will-change: transform, opacity; }
.gallery-label { pointer-events: none; }
body.lightbox-open { overflow: hidden; }
html:has(.project-lightbox[open]) { scrollbar-gutter: auto; overflow: hidden; }

.project-lightbox {
  position: fixed; inset: 0; z-index: 100;
  width: 100vw; height: 100dvh; max-width: none; max-height: none;
  margin: 0; padding: 20px 36px; border: 0;
  background: rgba(3, 31, 36, .98); color: #edf4ef;
  overflow: hidden;
}
.project-lightbox:not([open]) { display: none; }
.project-lightbox[open] { display: grid; grid-template-rows: 44px minmax(0, 1fr) auto; gap: 14px; }
.project-lightbox::backdrop { background: #031b20d9; backdrop-filter: blur(8px); }
.lightbox-header { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.lightbox-header .eyebrow { margin: 0; font-size: 9px; letter-spacing: 1.8px; }
.lightbox-count { margin-left: 18px; color: #a8c5bd; font-size: 10px; white-space: nowrap; }
.lightbox-close, .lightbox-arrow {
  display: flex; align-items: center; justify-content: center;
  width: 44px; height: 44px; flex-shrink: 0;
  background: transparent; color: #edf4ef; border: 1px solid #b7d2c940;
  transition: background .2s, border-color .2s;
}
.lightbox-close { border: 0; }
.lightbox-close svg { width: 28px; height: 28px; }
.lightbox-close:hover, .lightbox-arrow:hover { background: #ffffff12; border-color: #cce4d98c; }
.lightbox-stage {
  display: grid; grid-template-columns: 44px minmax(0, 1fr) 44px;
  align-items: center; gap: 24px; min-height: 0;
  width: 100%; max-width: 1440px; margin-inline: auto;
}
.lightbox-arrow { border-radius: 50%; }
.lightbox-prev svg { transform: rotate(180deg); }
.lightbox-figure {
  display: grid; grid-template-rows: minmax(0, 1fr) auto; gap: 14px;
  height: 100%; min-width: 0; min-height: 0; margin: 0;
}
.lightbox-image-wrap { min-height: 0; min-width: 0; display: flex; align-items: center; justify-content: center; }
.lightbox-image-wrap img {
  display: block; width: 100%; height: 100%; min-height: 0;
  object-fit: contain; user-select: none;
}
.lightbox-figure figcaption {
  width: min(100%, 720px); margin: 0 auto; color: #c1d3cd;
  font-size: 12px; line-height: 1.5; font-weight: 400; text-align: center;
}
.lightbox-hint { margin: 0; font-size: 10px; line-height: 1.4; color: #86aaa0; text-align: center; }
.desktop-hint > span { margin: 0 10px; }
.mobile-hint { display: none; }

@media (max-width: 760px) {
  .project-lightbox { padding: 12px 16px 16px; }
  .project-lightbox[open] { gap: 12px; }
  .lightbox-header .eyebrow { font-size: 8px; letter-spacing: 1px; gap: 10px; }
  .lightbox-count { margin-left: 4px; font-size: 9px; }
  .lightbox-stage { display: block; position: relative; }
  .lightbox-figure { gap: 14px; }
  .lightbox-figure figcaption { font-size: 11px; line-height: 1.5; }
  .lightbox-arrow {
    position: absolute; top: 42%; z-index: 1;
    background: #03232dcc; width: 42px; height: 42px;
  }
  .lightbox-prev { left: -8px; }
  .lightbox-next { right: -8px; }
  .lightbox-hint { font-size: 9px; }
  .desktop-hint { display: none; }
  .mobile-hint { display: inline; }
}

/* Modern polycarbonate backdrop for the audience section */
.audience { position: relative; isolation: isolate; overflow: hidden; background: #eef3ef url('assets/materials-canopy.webp') center / cover no-repeat; }
.audience::before { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(105deg, rgba(243,247,244,.96) 0%, rgba(243,247,244,.88) 42%, rgba(243,247,244,.58) 100%); }
.audience::after { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(135deg, transparent 0 48%, rgba(255,255,255,.18) 49%, transparent 50% 100%), linear-gradient(25deg, transparent 0 63%, rgba(6,76,90,.08) 64%, transparent 65%); background-size: 100% 100%, 100% 100%; mix-blend-mode: screen; pointer-events: none; }

`n

