@font-face{font-family:Manrope;src:url('/fonts/manrope.woff2') format('woff2');font-weight:200 800;font-display:swap}:root{--red:#e90814;--ink:#17181c;--muted:#60646c;--line:#d8dbdf;--paper:#f2f3f5;--dark:#141519;font-family:Manrope,Arial,sans-serif;color:var(--ink);background:#fff;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:108px}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default;opacity:.4}a{color:inherit;text-decoration:none}button{color:inherit}p{font-size:1rem;line-height:1.75;margin:0 0 1.3rem}h1,h2,h3{margin:0;font-weight:700}h1,h2{letter-spacing:-.055em;line-height:1.1}h2{font-size:clamp(2.1rem,3.6vw,3.5rem)}h3{font-size:1.2rem;line-height:1.35;letter-spacing:-.025em}img,video,svg{max-width:100%}img{height:auto}button{border:0}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #00a7e1;outline-offset:5px}[hidden]{display:none!important}[inert]{pointer-events:none}.wrap{width:min(1280px,calc(100% - 96px));margin-inline:auto}.section{padding-block:100px}.eyebrow,.small-label{font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.eyebrow{color:var(--red);margin-bottom:24px}.small-label{color:var(--muted);letter-spacing:.06em}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:48px;margin-bottom:44px}.section-heading>div:last-child:not(:first-child),.section-heading>p{max-width:370px}.section-heading p:last-child{margin-bottom:0}.section-heading>p,.section-heading>div>p:not(.eyebrow){color:var(--muted)}.section-end{text-align:center;margin-top:44px}.button{display:inline-flex;min-height:52px;align-items:center;justify-content:center;gap:26px;padding:14px 24px;border:1px solid transparent;border-radius:5px;font-size:.92rem;font-weight:700;line-height:1.4;text-align:center;transition:background .2s,transform .2s}.button span{font-size:1.25rem}.button:hover{transform:translateY(-2px)}.primary{background:var(--red);color:#fff}.primary:hover{background:#bb0610}.dark{background:var(--ink);color:white}.outline{border-color:#74767d;color:#fff;background:transparent}.outline:hover{background:#ffffff12}.button.text{padding:14px 0;border-bottom:1px solid var(--ink);border-radius:0;gap:36px}.text-button{font-size:.875rem;background:transparent;padding:12px;text-decoration:underline;text-underline-offset:4px}.icon-button{width:46px;height:46px;display:inline-grid;place-items:center;background:transparent;border:1px solid #777a83;border-radius:50%;font-size:1.2rem;flex-shrink:0}.icon-button:hover{background:#ffffff17}.skip-link{position:fixed;z-index:100;top:-100px;left:15px;padding:15px;background:white}.skip-link:focus{top:15px}.site-header{position:sticky;top:0;z-index:30;background:#fff;border-bottom:1px solid #e5e6e9}.header-inner{height:96px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:block;flex:0 0 274px;line-height:0}.brand img{width:274px;height:auto}.site-header nav{display:flex;align-items:center;gap:28px;font-size:.875rem;font-weight:650}.site-header nav>a:not(.button){padding-block:20px}.site-header nav>a:hover,.site-header nav>a[aria-current]{color:var(--red)}.site-header nav>.button{color:white;min-height:46px;padding:12px 19px;gap:14px}.menu-toggle{display:none}.hero{position:relative;background:#121316;color:#fff;overflow:hidden}.hero-slide{position:relative;min-height:660px;height:min(740px,calc(100svh - 96px));display:flex;align-items:center;isolation:isolate;padding-bottom:94px}.hero-copy{position:relative;z-index:2;pointer-events:none}.hero-copy a{pointer-events:auto}.hero-copy h1,.hero-copy h2{font-size:clamp(3rem,5.2vw,5rem);line-height:1.02;max-width:9.5em;font-weight:650;letter-spacing:-.052em}.hero-copy>.eyebrow{font-size:.78rem;color:#d5d7dd;letter-spacing:.12em;margin-bottom:26px}.hero-description{max-width:360px;color:#cdd0d7;margin-top:26px;line-height:1.65}.hero-actions{display:flex;gap:12px;margin-top:30px;flex-wrap:wrap;max-width:460px}.hero-actions .button{gap:16px;padding-inline:20px}.hero-photo{position:absolute;z-index:0;right:0;top:25px;bottom:115px;width:64%;display:flex;align-items:center;justify-content:center;background:#121316}.hero-photo .photo{width:100%;height:100%;display:block}.hero-photo:after{content:'';position:absolute;inset:0 auto 0 0;width:22%;background:linear-gradient(90deg,#121316,transparent);pointer-events:none}.hero-credit{position:absolute;bottom:-27px;right:48px;font-size:.8rem;color:#c7c9d0}.hero-credit span{margin-inline:8px;color:var(--red)}.hero-bottom{position:absolute;z-index:4;left:0;right:0;bottom:0;min-height:92px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #3a3c43;gap:25px}.hero-location{font-size:.75rem;font-weight:700;letter-spacing:.14em}.hero-location span{color:#afb3bd;margin-left:24px;font-weight:500}.hero-controls{display:flex;align-items:center;gap:18px}.hero-dots{display:flex;gap:6px}.hero-dots button{padding:12px 9px;min-width:38px;min-height:44px;background:transparent;color:#aaaeb8;font-size:.8rem;border-bottom:2px solid transparent}.hero-dots button[aria-pressed=true]{color:white;border-color:var(--red)}.hero-pause{color:#c6c9d1;min-width:75px}.brand-strip{background:#202126;color:#d4d5da}.brand-strip>.wrap{display:flex;justify-content:space-between;gap:24px;min-height:66px;align-items:center;font-size:.82rem;letter-spacing:.025em}.brand-strip span{padding-left:15px;border-left:2px solid var(--red)}.brand-strip span:nth-child(2){border-color:#00b8f8}.brand-strip span:nth-child(3){border-color:#ffc400}.brand-strip span:nth-child(4){border-color:#78c52a}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 28px}.project-card{min-width:0}.project-photo{position:relative;display:block;width:100%;aspect-ratio:4/3;padding:0;background:#e9ebed;overflow:hidden;border-radius:4px}.photo{display:block;width:100%;height:100%;overflow:hidden}.project-photo .photo{transition:transform .45s ease}.photo-count{position:absolute;right:12px;bottom:12px;display:flex;align-items:center;gap:14px;background:#fff;color:#222;padding:8px 12px;border-radius:3px;font-size:.75rem;font-weight:700;box-shadow:0 2px 14px #0001}.photo-count span{font-size:1.1rem}.project-caption{padding:18px 0 0;border-bottom:1px solid var(--line);min-height:140px}.project-caption .small-label{font-size:.72rem;display:block;margin-bottom:7px}.project-caption h3 button{background:transparent;text-align:left;padding:0;font:inherit}.project-caption h3 button:hover{color:var(--red)}.project-caption p{font-size:.875rem;color:var(--muted);line-height:1.55;margin-top:7px}.services-section{background:var(--paper)}.services-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.service-card{background:#fff;border:1px solid #e0e2e6;border-radius:5px;overflow:hidden}.service-card a{display:flex;flex-direction:column;height:100%}.service-photo{height:196px;background:#dfe2e6;overflow:hidden}.service-copy{position:relative;display:flex;flex-direction:column;padding:24px;flex:1;gap:13px}.service-copy>.small-label{color:var(--red)}.service-copy h3{font-size:1.13rem;min-height:3em}.service-copy p{font-size:.88rem;color:var(--muted);line-height:1.65;flex:1;margin:0 0 14px}.service-link{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:16px;font-size:.83rem;font-weight:750}.service-link span{font-size:1.2rem}.service-card:hover .service-link{color:var(--red)}.service-card:hover{border-color:#a6a9b0}.production{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.production-video{position:relative;border-radius:5px;overflow:hidden;background:var(--dark);height:660px;display:flex;align-items:center;justify-content:center}.production-video video{width:100%;height:100%;object-fit:contain;display:block}.production-video>span{position:absolute;pointer-events:none;top:22px;left:24px;font-size:.7rem;font-weight:700;color:white;letter-spacing:.1em;background:#141519aa;padding:9px 12px;border-radius:3px}.process-list{list-style:none;padding:0;margin:36px 0 0;display:grid;gap:0}.process-list li{position:relative;padding:19px 0 19px 52px;border-top:1px solid var(--line)}.step-number{position:absolute;left:0;top:23px;color:var(--red);font-size:.78rem;font-weight:700}.process-list h3{font-size:1.12rem;margin-bottom:7px}.process-list p{font-size:.9rem;color:var(--muted);line-height:1.6;margin:0}.about-section{color:#fff;background:#191a1e;padding-block:88px;border-top:4px solid var(--red)}.about-inner{display:grid;grid-template-columns:1.05fr .95fr;gap:100px;align-items:center}.about-statement .eyebrow{color:#aeb3be}.about-statement h2{font-size:clamp(2.5rem,4.3vw,4.1rem)}.about-city{display:block;margin-top:36px;font-size:.8rem;letter-spacing:.13em;color:#bfc2c9}.about-copy p{color:#c8cbd2;line-height:1.85}.about-copy .button{margin-top:12px}.reputation-section{background:#232429;color:#fff}.reputation-section .eyebrow{color:#adb2bc}.rating strong{display:block;font-size:4rem;letter-spacing:-.05em;line-height:1}.rating strong span{font-size:1.3rem;color:#adafb9;margin-left:6px}.rating .stars{color:#e5bd62;display:block;margin-top:12px;letter-spacing:3px}.rating p{margin:8px 0;font-size:.85rem;color:#c2c5ce}.rating>a{font-size:.8rem;text-decoration:underline;text-underline-offset:5px}.reviews{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.reviews img{display:block;width:100%}.review-note{margin:22px 0 0;color:#b7bbc4;font-size:.75rem}.faq-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}.faq-list details{border-top:1px solid var(--line);padding:22px 0}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:28px;font-size:1rem;font-weight:650;cursor:pointer}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{font-size:1.4rem;color:var(--red)}.faq-list details[open] summary>span{transform:rotate(45deg)}.faq-list details p{color:var(--muted);margin:16px 36px 0 0;font-size:.94rem}.contact-section{background:var(--paper)}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px}.contact-grid>div>p:not(.eyebrow){color:var(--muted);max-width:360px;margin-top:24px}.contact-links{display:grid;gap:25px;margin-top:36px}.contact-links>a>small{display:block;font-size:.72rem;font-weight:700;letter-spacing:.08em;color:var(--muted);margin-bottom:8px}.contact-links>a>strong{font-size:1.5rem}.contact-links>a:hover{color:var(--red)}.call-links{display:flex;flex-wrap:wrap;gap:12px 22px;font-size:.8rem;text-decoration:underline;text-underline-offset:4px}.contact-links>a:last-child{font-size:.875rem;line-height:1.7}form{background:white;padding:34px;border:1px solid #dddfe4;border-radius:5px}form label{display:block;font-size:.85rem;font-weight:650;margin-bottom:20px}form small{font-size:.75rem;font-weight:450;color:var(--muted)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}input,select,textarea{display:block;min-width:0;width:100%;border:1px solid #c8ccd3;border-radius:4px;padding:12px;color:var(--ink);background:#fff;font-size:1rem;margin-top:9px;font-weight:400}input,select{height:48px}textarea{resize:vertical}form .button{width:100%}.form-note{font-size:.75rem;line-height:1.65;color:var(--muted);margin:18px 0 0}.form-note a{text-decoration:underline}.quote-preview{margin-top:24px;padding:24px;background:var(--paper);border-left:3px solid var(--red)}.quote-preview h3{font-size:1.1rem}.quote-text{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.9rem;margin-block:16px}.quote-edit{display:block;margin:12px auto 0}.site-footer{background:#15161a;color:#c3c7d0;padding:55px 0 24px}.footer-top{display:flex;justify-content:space-between;gap:40px;padding-bottom:44px}.footer-brand{font-size:1.7rem;font-weight:700;color:white;letter-spacing:-.045em}.footer-brand span{display:block;font-size:.8rem;font-weight:450;letter-spacing:.1em;margin-top:5px}.footer-top p{font-size:.8rem;margin-top:20px;margin-bottom:0}.footer-top>div:last-child{display:flex;flex-direction:column;gap:14px;font-size:.85rem}.footer-bottom{display:flex;justify-content:space-between;gap:30px;border-top:1px solid #383a41;padding-top:22px;font-size:.75rem}.footer-bottom>div{display:flex;gap:24px}.contact-widget{position:fixed;right:24px;bottom:24px;z-index:40;display:flex;align-items:end;flex-direction:column;gap:12px;max-width:calc(100% - 32px)}.contact-toggle{min-height:54px;padding:14px 20px;background:var(--red);color:white;display:flex;align-items:center;gap:10px;border-radius:30px;box-shadow:0 4px 18px #0002;font-size:.85rem;font-weight:650}#contact-options{width:320px;max-width:100%;background:white;color:var(--ink);border:1px solid var(--line);padding:22px;box-shadow:0 10px 45px #0003;border-radius:10px}#contact-options strong{display:block;font-size:1.05rem;margin-bottom:15px}#contact-options a{display:block;padding:13px 0;border-top:1px solid #e0e2e7;font-size:.9rem}#contact-options a:hover{color:var(--red)}#contact-options small{display:block;font-size:.76rem;color:var(--muted);margin-top:5px}.catalog-intro{padding-top:70px}.catalog-intro h1{font-size:clamp(2.7rem,4.7vw,4.5rem)}.catalog-intro .section-heading{margin-bottom:42px}.catalog-filters{position:static;display:flex;flex-wrap:wrap;gap:9px;padding-block:24px;border-block:1px solid var(--line)}.catalog-filters button{min-height:44px;display:flex;gap:13px;align-items:center;padding:10px 15px;background:#f1f2f4;border-radius:3px;font-size:.85rem;font-weight:650}.catalog-filters button span{font-size:.75rem;font-weight:450;opacity:.75}.catalog-filters button[aria-pressed=true]{background:var(--ink);color:white}.catalog-filters button:hover{background:#e2e4e8}.catalog-filters button[aria-pressed=true]:hover{background:#30323a}.catalog-result{font-size:.8rem;color:var(--muted);margin:24px 0}.catalog-cta{display:flex;justify-content:space-between;align-items:center;gap:40px;padding:55px;background:var(--paper);margin:70px 0}.catalog-cta h2{font-size:2.6rem}.gallery{padding:25px 30px 30px;background:#191a1e;color:white;border:1px solid #41444c;border-radius:8px;width:min(1000px,calc(100% - 40px));max-height:calc(100svh - 40px);overflow:auto}.gallery::backdrop{background:#07090de8}.gallery-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.gallery-top .small-label{color:#aeb3c0;display:block;margin-bottom:7px}.gallery h2{font-size:1.55rem;letter-spacing:-.025em;line-height:1.25}.gallery-image{height:min(59svh,640px);background:#101114;touch-action:pan-y}.gallery-bottom{display:flex;align-items:center;justify-content:center;gap:28px;margin-top:18px}.gallery-bottom p{font-size:.9rem;margin:0}.gallery-quote{display:flex;width:max-content;max-width:100%;margin:18px auto 0}.gallery .photo{width:100%;height:100%}body.modal-open{overflow:hidden}@media(min-width:1600px){.hero-photo{width:64%;right:3%}.hero-slide{height:760px}.hero-copy h1,.hero-copy h2{font-size:5rem}}@media(max-width:1200px){.wrap{width:calc(100% - 64px)}.header-inner{gap:20px}.brand,.brand img{width:240px;flex-basis:240px}.site-header nav{gap:18px}.hero-slide{min-height:610px}.hero-photo{width:61%;top:32px;bottom:115px}.hero-copy h1,.hero-copy h2{font-size:4rem}.hero-description{max-width:330px}.hero-actions{max-width:330px}.hero-actions .button{font-size:.85rem;gap:10px;padding:12px 16px}.hero-location span{display:none}.services-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.production,.contact-grid{gap:42px}.about-inner{gap:60px}.section{padding-block:80px}.project-grid{gap:30px 22px}}@media(max-width:1000px){.header-inner{height:82px}.brand,.brand img{width:220px;flex-basis:220px}.menu-toggle{display:flex;align-items:center;gap:12px;padding:12px;background:transparent;font-size:.9rem}.site-header nav{display:none;position:absolute;left:0;right:0;top:82px;background:#fff;border-bottom:1px solid var(--line);padding:22px 32px;box-shadow:0 12px 24px #0001}.site-header nav.is-open{display:flex;align-items:stretch;flex-direction:column;gap:0}.site-header nav>a:not(.button){padding:15px 0}.site-header nav>.button{margin-top:12px}.hero-copy h1,.hero-copy h2{font-size:3.6rem}.hero-photo{width:60%;top:25px;bottom:135px}.hero-description{max-width:295px}.hero-copy>.eyebrow{font-size:.7rem;max-width:280px}.hero-slide{min-height:620px}.hero-actions{max-width:280px;gap:10px}.hero-actions .button{min-height:46px}.hero-credit{right:32px;bottom:-20px;font-size:.72rem}.hero-controls{gap:10px}.hero-bottom{min-height:82px}.brand-strip>.wrap{gap:14px;flex-wrap:wrap;padding-block:18px;font-size:.76rem}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-photo{height:230px}.section-heading{gap:35px}.section-heading>div:last-child:not(:first-child),.section-heading>p{max-width:300px}.production{gap:36px}.production-video{height:560px}.about-inner{gap:40px}.faq-section{grid-template-columns:1fr;gap:40px}.contact-grid{gap:40px;grid-template-columns:1fr 1.2fr}.contact-grid h2{font-size:2.4rem}form{padding:24px}.form-row{grid-template-columns:1fr;gap:0}.reviews{gap:12px}}@media(max-width:700px){html{scroll-padding-top:86px}.wrap{width:calc(100% - 40px)}.section{padding-block:60px}.header-inner{height:76px;gap:12px}.brand,.brand img{width:212px;flex-basis:212px}.menu-toggle{padding:12px 0;gap:9px;font-size:.8rem}.site-header nav{top:76px;padding:16px 20px}.hero-slide{height:auto;min-height:0;display:flex;flex-direction:column;padding:0 0 25px;align-items:stretch}.hero-photo{position:relative;top:auto;right:auto;bottom:auto;order:0;width:100%;height:320px;padding:0 20px 28px;background:#17181c}.hero-photo:after{display:none}.hero-photo .photo{width:100%;height:100%}.hero-credit{bottom:9px;left:20px;right:auto;font-size:.7rem}.hero-copy{order:1;padding-top:28px}.hero-copy>.eyebrow{font-size:.68rem;max-width:none;margin-bottom:16px;letter-spacing:.08em}.hero-copy h1,.hero-copy h2{font-size:clamp(2.5rem,8.8vw,3.5rem);line-height:1.06;max-width:13em}.hero-copy h1 br,.hero-copy h2 br{display:none}.hero-copy h1 br:after,.hero-copy h2 br:after{content:' '}.hero-description{max-width:100%;font-size:.95rem;margin-top:18px;margin-bottom:0;line-height:1.6}.hero-actions{max-width:none;margin-top:24px;display:flex;gap:10px}.hero-actions .button{font-size:.85rem;padding:12px 16px;min-height:48px}.hero-bottom{position:relative;min-height:76px;justify-content:center;gap:0}.hero-location{display:none}.hero-controls{gap:12px;width:100%;justify-content:space-between}.hero-controls>.icon-button{width:40px;height:40px}.hero-pause{padding:10px 0;min-width:65px;font-size:.78rem}.hero-dots{gap:0}.hero-dots button{min-width:34px}.brand-strip>.wrap{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding-block:20px;font-size:.7rem}.brand-strip span{padding-left:10px}.section-heading{display:block;margin-bottom:30px}.section-heading>div:last-child:not(:first-child),.section-heading>p{max-width:100%;margin-top:24px}.section-heading .eyebrow{margin-top:0}.eyebrow{font-size:.7rem;margin-bottom:18px}.project-grid{gap:26px 16px}.project-caption{padding-top:14px;min-height:144px}.project-caption .small-label{font-size:.65rem;letter-spacing:.035em}.project-caption h3{font-size:1rem;line-height:1.4}.project-caption p{font-size:.8rem;line-height:1.5}.photo-count{font-size:.68rem;right:7px;bottom:7px;padding:5px 8px;gap:8px}.photo-count span{font-size:.85rem}.services-grid{gap:18px}.service-photo{height:180px}.service-copy{padding:18px;gap:10px}.service-copy h3{font-size:1.06rem;min-height:0}.service-copy p{font-size:.85rem;line-height:1.6}.service-link{font-size:.78rem}.production{grid-template-columns:1fr;gap:38px}.production-video{height:440px;max-height:75svh}.production-copy{order:-1}.process-list{margin-top:26px}.about-section{padding-block:60px}.about-inner{grid-template-columns:1fr;gap:30px}.about-statement h2{font-size:2.7rem}.about-copy p{font-size:.95rem}.about-city{margin-top:24px}.rating{display:grid;grid-template-columns:auto 1fr;column-gap:22px;align-items:center}.rating strong{grid-row:span 3;font-size:3.4rem}.rating .stars{margin:0}.rating p{margin:4px 0}.reviews{grid-template-columns:1fr;gap:18px}.reviews img{max-width:520px;margin:auto}.review-note{font-size:.7rem}.faq-section{gap:30px}.faq-list summary{font-size:.95rem;gap:20px}.faq-list details p{font-size:.9rem;margin-right:0}.contact-grid{grid-template-columns:1fr;gap:38px}.contact-grid h2{font-size:2.6rem}.contact-links{gap:22px}.contact-links>a>strong{font-size:1.4rem}form{padding:24px 20px}.form-row{grid-template-columns:1fr}.form-note{font-size:.75rem}.footer-top{flex-direction:column;gap:30px}.footer-bottom{flex-direction:column;gap:18px}.contact-widget{right:16px;bottom:16px}.contact-toggle{width:52px;height:52px;min-height:52px;padding:0;justify-content:center}.contact-toggle>span{display:none}.catalog-intro{padding-top:46px}.catalog-intro h1{font-size:2.65rem}.catalog-filters{gap:8px;padding-block:20px}.catalog-filters button{font-size:.78rem;gap:8px;padding:9px 12px}.catalog-filters button span{font-size:.68rem}.catalog-result{margin:20px 0}.catalog-cta{margin-block:45px;padding:28px;display:block}.catalog-cta h2{font-size:2rem}.catalog-cta .button{margin-top:28px}.gallery{padding:18px;width:calc(100% - 20px);max-height:calc(100svh - 20px)}.gallery h2{font-size:1.2rem}.gallery-top{gap:12px}.gallery-image{height:55svh}.gallery .small-label{font-size:.7rem}.gallery-quote{font-size:.85rem}.gallery-bottom{margin-top:14px}}@media(max-width:420px){.wrap{width:calc(100% - 32px)}.brand,.brand img{width:195px;flex-basis:195px}.hero-photo{height:278px;padding-inline:16px}.hero-credit{left:16px}.hero-actions .button{font-size:.8rem;padding:12px 13px;gap:10px}.services-grid{grid-template-columns:1fr}.service-card a{display:grid;grid-template-columns:116px minmax(0,1fr);height:100%}.service-photo{height:100%;min-height:260px}.service-copy{padding:18px}.service-copy>.small-label{font-size:.68rem}.service-copy p{margin-bottom:4px}.service-link{padding-top:12px}.project-grid{grid-template-columns:1fr;gap:28px}.project-caption{min-height:115px}.project-caption h3{font-size:1.13rem}.project-caption p{font-size:.875rem}.project-caption .small-label{font-size:.72rem}.photo-count{font-size:.75rem;padding:7px 10px}.hero-controls{gap:8px}.hero-dots button{min-width:32px}.catalog-intro h1{font-size:2.4rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}.project-card{display:flex;flex-direction:column}.project-caption{flex:1}.services-grid{grid-auto-rows:1fr}.hero-slide{animation:hero-enter .6s ease both}@keyframes hero-enter{from{opacity:.25}to{opacity:1}}@media (min-width:701px) and (max-width:1200px){.hero-copy h1,.hero-copy h2{font-size:3.4rem}.hero-description{max-width:305px}.hero-photo{width:60%}}@media (min-width:701px) and (max-width:1000px){.hero-copy h1,.hero-copy h2{font-size:2.8rem}.hero-description{max-width:270px}.hero-photo{width:56%}}@media (max-width:700px){.hero-copy h1,.hero-copy h2{min-height:3.18em}.hero-description{min-height:4.8em}}.production{background:#191b20;color:#fff;grid-template-columns:.9fr 1.1fr;gap:0;align-items:stretch;padding:0;margin-block:90px;border-radius:8px;overflow:hidden}.production-video{height:auto;min-height:700px;border-radius:0;background:#111216}.production-video video{width:100%;height:100%;position:absolute;inset:0;object-fit:contain}.production-video>span{top:24px;left:24px;background:#111216b8;border:1px solid #ffffff26;padding:10px 14px;backdrop-filter:blur(8px)}.production-copy{padding:56px 48px;align-self:center}.production-copy .eyebrow{color:#f3686e;font-size:.75rem;letter-spacing:.1em;margin-bottom:22px}.production-copy h2{font-size:clamp(2.5rem,3.9vw,3.7rem);line-height:1.06;letter-spacing:-.045em}.production-intro{color:#babfc9;font-size:1rem;line-height:1.65;margin:22px 0 0;max-width:340px}.process-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 28px;margin:36px 0 0;padding:0;list-style:none}.process-list li{padding:22px 0 0;border-top:1px solid #41444d;min-width:0}.process-icon{display:flex;align-items:center;justify-content:center;width:38px;height:38px;background:#ffffff09;color:#f3686e;border:1px solid #ffffff15;border-radius:6px;margin-bottom:14px}.process-list h3{font-size:1.05rem;letter-spacing:-.015em;margin-bottom:9px;color:white}.process-list p{font-size:.875rem;line-height:1.65;color:#bdc2cd;margin:0}@media(max-width:1100px){.production-copy{padding:40px 32px}.production-video{min-height:730px}.process-list{gap:26px 20px}}@media(max-width:850px){.production{grid-template-columns:1fr;margin-block:60px}.production-copy{order:0;padding:40px}.production-video{order:1;min-height:0;height:520px;border-top:1px solid #3b3e46}.production-copy h2{font-size:3rem}.production-intro{max-width:100%}.process-list{gap:28px 32px;margin-top:30px}}@media(max-width:480px){.production{margin-block:48px}.production-copy{padding:32px 24px}.production-copy h2{font-size:2.55rem}.production-copy .eyebrow{font-size:.68rem}.production-intro{font-size:.95rem;margin-top:18px}.process-list{gap:24px 18px;margin-top:28px}.process-list li{padding-top:18px}.process-list h3{font-size:1rem}.process-list p{font-size:.84rem;line-height:1.65}.production-video{height:440px;max-height:none}.production-video>span{left:18px;top:18px;font-size:.65rem}}@media(max-width:350px){.production-copy{padding:28px 20px}.process-list{grid-template-columns:1fr;gap:20px}.process-list li{display:grid;grid-template-columns:38px minmax(0,1fr);gap:0 14px}.process-icon{grid-row:span 2;margin:0}.process-list p{grid-column:2}}.phone-card{background:#fff;border:1px solid #d9dce2;border-radius:8px;padding:23px 24px;max-width:390px;box-shadow:0 3px 12px #17202e04}.phone-card-label{display:block;color:#616772;font-size:.76rem;letter-spacing:.05em;font-weight:650;margin-bottom:10px}.phone-card>strong{display:block;font-size:1.65rem;letter-spacing:-.035em;line-height:1.25;color:#1a1c22}.phone-card-actions{display:grid;grid-template-columns:1.25fr 1fr;gap:10px;margin-top:19px}.phone-card-actions a{display:flex;align-items:center;justify-content:center;gap:9px;padding:12px 14px;min-height:46px;border-radius:5px;font-size:.85rem;font-weight:700;border:1px solid #d6dbe2}.phone-card-actions .phone-whatsapp{background:#eaf5ef;color:#166443;border-color:#c9e5d6}.phone-card-actions .phone-whatsapp:hover{background:#d9eddf}.phone-card-actions .phone-call:hover{background:#f2f3f5}.privacy-consent{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#f4f5f7;border:1px solid #e1e3e8;border-radius:5px;margin:0 0 22px}.privacy-consent input{width:20px;height:20px;min-width:20px;flex:0 0 20px;margin:2px 0 0;padding:0;accent-color:var(--red);cursor:pointer}.privacy-consent label{margin:0;font-size:.82rem;font-weight:450;line-height:1.65;cursor:pointer}.privacy-consent a{text-decoration:underline;text-underline-offset:3px;font-weight:650}.hero-slide{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:48px;width:min(1280px,calc(100% - 96px));margin-inline:auto;min-height:680px;height:auto;padding:44px 0 122px;align-items:center}.hero-copy.wrap{grid-column:1;grid-row:1;width:100%;margin:0;min-width:0;max-width:100%}.hero-copy h1,.hero-copy h2{font-size:clamp(2.25rem,4.2vw,4.2rem);max-width:100%;line-height:1.07;overflow-wrap:normal}.hero-photo{position:relative;grid-column:2;grid-row:1;inset:auto;width:100%;height:520px;min-width:0;padding:0;background:transparent}.hero-photo:after{display:none}.hero-credit{right:0;left:auto;bottom:-30px;font-size:.75rem}.hero-actions{max-width:100%}.hero-description{max-width:390px}@media(min-width:1600px){.hero-slide{height:auto}.hero-photo{right:auto;width:100%;height:560px}.hero-copy h1,.hero-copy h2{font-size:4.2rem}}@media(max-width:1200px) and (min-width:901px){.hero-slide{width:calc(100% - 64px);gap:30px}.hero-photo{height:470px}.hero-copy h1,.hero-copy h2{font-size:clamp(2.25rem,4.2vw,3.3rem)}}@media(max-width:900px){.hero-slide{width:calc(100% - 48px);grid-template-columns:1fr;gap:40px;min-height:0;padding:24px 0 112px}.hero-copy.wrap{grid-column:1;grid-row:2}.hero-photo{grid-column:1;grid-row:1;height:340px;width:100%;padding:0}.hero-copy h1,.hero-copy h2{font-size:clamp(2.5rem,6vw,3.7rem);min-height:0}.hero-copy h1 br,.hero-copy h2 br{display:none}.hero-description{max-width:560px;min-height:0}.hero-actions{max-width:100%}.hero-credit{left:0;right:auto;bottom:-25px}}@media(max-width:700px){.hero-slide{width:calc(100% - 40px);padding:18px 0 28px;gap:42px}.hero-photo{height:290px}.hero-copy{padding-top:0}.hero-copy h1,.hero-copy h2{font-size:clamp(2.3rem,8vw,3.2rem);min-height:3.21em}.hero-description{min-height:4.8em}.hero-bottom{position:relative}}@media(max-width:420px){.hero-slide{width:calc(100% - 32px)}.hero-photo{height:255px}.phone-card{padding:20px}.phone-card>strong{font-size:1.5rem}.phone-card-actions a{padding:11px 10px}.privacy-consent{padding:14px}}
/* Acabamento visual: escala tipográfica, ritmo e estados de interação. */
:root{--paper:#f4f4f3;--line:#dedfdf;--muted:#5f646b}
html{scroll-padding-top:100px}body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2{letter-spacing:-.043em;text-wrap:balance}h3{text-wrap:balance}.eyebrow{font-size:.73rem;letter-spacing:.13em;font-weight:750}
.section{padding-block:88px}.section-heading{gap:64px;margin-bottom:40px}.section-heading h2{max-width:650px;font-size:clamp(2.15rem,calc(1.55rem + 1.9vw),3.25rem)}
.header-inner{height:88px}.brand{flex-basis:258px}.brand img{width:258px}.site-header nav{gap:30px}.site-header nav>a:not(.button){position:relative}.site-header nav>a:not(.button):after{content:'';position:absolute;bottom:13px;left:0;right:0;height:2px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .2s}.site-header nav>a:hover:after{transform:scaleX(1)}
.button{min-height:50px;border-radius:4px;padding:14px 23px;font-size:.875rem;transition:background .18s,border-color .18s}.button:hover{transform:none}.button:active{filter:brightness(.93)}.button.text{min-height:44px}.icon-button{min-width:44px;min-height:44px}.text-button{min-height:44px}
.hero-slide{min-height:620px;padding:34px 0 110px;gap:56px}.hero-photo{height:440px}.hero-photo img{border-radius:3px}.hero-copy h1,.hero-copy h2{font-size:clamp(2.6rem,calc(1.65rem + 2.7vw),4.25rem);letter-spacing:-.045em;font-weight:700;line-height:1.08}.hero-description{font-size:1rem;max-width:390px;margin-top:26px}.hero-copy>.eyebrow{font-size:.73rem}.hero-bottom{min-height:82px}.hero-credit{font-size:.72rem;bottom:-22px}.hero-location{font-size:.7rem}
.project-grid{gap:34px 28px}.project-card{cursor:pointer}.project-photo{border-radius:4px;background:#f0f0ee;border:1px solid #e6e6e3}.project-photo .photo{transition:transform .35s}.project-caption{padding-top:20px;min-height:134px;padding-bottom:18px}.project-caption h3{font-size:1.13rem;line-height:1.4}.project-caption h3 button{min-height:30px}.project-caption p{font-size:.88rem;margin-bottom:0}.project-caption .small-label{font-size:.67rem;color:#62666e;letter-spacing:.1em}.project-card:hover h3{color:var(--red)}.project-card:hover .project-photo{border-color:#bfc0bd}.photo-count{border:1px solid #ececea;background:#fffffff2;padding:7px 10px;font-size:.7rem;border-radius:3px;box-shadow:none}
.filter-group{gap:8px}.filter-group button{min-height:44px;border-radius:4px;transition:background .18s,color .18s}.services-section{background:#f4f4f3}.services-grid{gap:22px}.service-card{border-color:#dfdfdc;border-radius:5px;transition:border-color .18s}.service-photo{height:204px}.service-photo img{transition:transform .35s}.service-copy{padding:24px;gap:12px}.service-copy h3{font-size:1.18rem;min-height:2.7em}.service-copy p{font-size:.89rem;line-height:1.7}.service-link{min-height:44px;font-size:.83rem}.service-card:hover{border-color:#aaaeb3}
.production{border-radius:6px;box-shadow:none}.production-copy{padding:54px 46px}.production-copy h2{letter-spacing:-.04em}.production-intro{font-size:.97rem}.process-icon{background:transparent;border-color:#45474b;color:#ef8b8e}.process-list li{border-color:#414349}
.about-section{padding-block:78px;border-top:0}.about-statement h2{max-width:650px;font-size:clamp(2.45rem,calc(1.5rem + 2.7vw),3.7rem)}.about-inner{gap:80px}.about-copy p{font-size:.97rem}.about-city{margin-top:28px}.faq-list details{padding:24px 0}.faq-list summary{min-height:34px;line-height:1.5}.faq-list summary:hover{color:var(--red)}.faq-list details p{line-height:1.8}
.contact-grid{gap:70px}.contact-grid h2{font-size:clamp(2.4rem,calc(1.65rem + 2vw),3.5rem)}.phone-card{box-shadow:none;border-color:#dbdddc}.phone-card-label{font-size:.74rem}.phone-card-actions a{transition:background .18s}.contact-section form{border-color:#dbdddf;border-radius:6px;padding:36px}.contact-section form input:not([type=checkbox]),.contact-section form select,.contact-section form textarea{border-radius:4px;background:#fff;font-size:.95rem;min-height:48px}.contact-section form textarea{line-height:1.65}.contact-section form label{font-size:.85rem}.contact-section form .privacy-consent label{font-size:.79rem;line-height:1.7}.form-note{line-height:1.75}.quote-preview{padding:24px;border-radius:4px}.quote-text{overflow-wrap:anywhere}.contact-toggle{box-shadow:0 4px 16px #00000018}
.catalog-intro{padding-top:64px}.catalog-intro h1{font-size:clamp(2.65rem,calc(1.6rem + 2.8vw),4rem);letter-spacing:-.045em}.catalog-filters{padding-block:22px}.catalog-cta{border-radius:5px;padding:44px}.catalog-cta h2{font-size:2.6rem}.gallery{border-radius:6px;padding:26px;max-width:1040px}.gallery h2{font-size:1.4rem;letter-spacing:-.025em}.gallery .gallery-image{border-radius:3px}.gallery-top{gap:22px}.gallery-close{border-color:#60636b}.gallery-bottom{margin-top:18px}.gallery::backdrop{background:#080a0de8}
.legal-main{padding-block:70px 90px;max-width:1000px}.legal-main h1{font-size:clamp(2.45rem,calc(1.75rem + 2vw),3.8rem);max-width:850px}.legal-intro{max-width:760px;color:var(--muted);margin-top:24px;font-size:1.05rem}.legal-body{max-width:820px;margin-top:42px}.legal-body section{padding-block:28px;border-top:1px solid var(--line)}.legal-body h2{font-size:1.4rem;letter-spacing:-.025em;margin-bottom:20px}.legal-body p{font-size:.95rem;line-height:1.85}.legal-body a{text-decoration:underline;text-underline-offset:4px}.legal-index{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:30px}.legal-index a{font-size:.85rem;padding:10px 14px;background:var(--paper);border:1px solid var(--line);border-radius:4px;min-height:44px}.legal-body table{width:100%;border-collapse:collapse;font-size:.875rem;margin-bottom:24px;line-height:1.75}.legal-body td,.legal-body th{padding:15px;text-align:left;border:1px solid var(--line)}.legal-body th{background:var(--paper)}.error-main{padding-block:90px;min-height:60vh}.error-main h1{font-size:clamp(2.3rem,4vw,3.6rem);max-width:700px}.error-main p{margin-block:24px;color:var(--muted)}
@media(max-width:1100px){.header-inner{height:80px}.hero-slide{gap:32px}.hero-photo{height:410px}.section-heading{gap:36px}.contact-grid{gap:36px}.production-copy{padding:40px 32px}.about-inner{gap:46px}}
@media(max-width:900px){.hero-slide{padding:24px 0 108px;min-height:0;gap:38px}.hero-photo{height:340px}.hero-copy h1,.hero-copy h2{font-size:clamp(2.55rem,calc(1.9rem + 2.5vw),3.4rem);min-height:0}.hero-description{max-width:560px;min-height:0}.production-copy{padding:38px}.section{padding-block:64px}.section-heading{gap:26px}.legal-main{padding-top:46px}}
@media(max-width:700px){html{scroll-padding-top:86px}.header-inner{height:76px}.brand{flex-basis:205px}.brand img{width:205px}.site-header nav>a:not(.button):after{display:none}.hero-slide{padding:18px 0 26px;gap:36px}.hero-photo{height:260px}.hero-copy h1,.hero-copy h2{font-size:clamp(2.15rem,calc(1.7rem + 2.1vw),2.7rem);min-height:0;line-height:1.12;letter-spacing:-.04em}.hero-description{margin-top:22px;min-height:0;font-size:.95rem;line-height:1.75}.hero-copy>.eyebrow{font-size:.65rem;letter-spacing:.1em;margin-bottom:20px}.hero-bottom{min-height:78px;gap:12px}.hero-location{display:none}.hero-controls{width:100%;justify-content:space-between}.hero-credit{font-size:.67rem}.hero-actions{gap:10px;margin-top:24px}.hero-actions .button{font-size:.8rem;padding:13px 16px;min-height:48px}.section-heading h2{font-size:2.2rem}.section-heading p{font-size:.94rem}.project-caption{min-height:128px}.project-caption h3{font-size:1.12rem}.project-grid{gap:28px}.service-copy{padding:20px}.service-photo{height:190px}.service-copy h3{min-height:0;font-size:1.1rem}.service-copy p{font-size:.875rem}.production-copy{padding:32px 24px}.production-copy h2{font-size:2.45rem}.production-intro{font-size:.94rem}.about-statement h2{font-size:2.65rem}.about-inner{gap:28px}.about-copy p{font-size:.95rem}.contact-grid{gap:32px}.contact-section form{padding:26px 20px}.phone-card{max-width:100%;padding:23px}.contact-grid h2{font-size:2.5rem}.faq-section{gap:28px}.faq-list details{padding:22px 0}.faq-list summary{font-size:.95rem}.catalog-intro{padding-top:42px}.catalog-intro h1{font-size:2.6rem}.catalog-filters{padding-block:18px}.catalog-cta{padding:28px}.catalog-cta h2{font-size:2.2rem}.gallery{padding:18px;width:calc(100% - 20px)}.gallery h2{font-size:1.15rem}.gallery-top{gap:12px}.gallery-close{width:44px;height:44px}.legal-main{padding-block:42px 60px}.legal-main h1{font-size:2.45rem}.legal-intro{font-size:.97rem}.legal-body{margin-top:30px}.legal-body h2{font-size:1.25rem}.legal-body p{font-size:.92rem}.legal-body td,.legal-body th{padding:10px;overflow-wrap:anywhere}.legal-body table{font-size:.78rem}.legal-index{gap:8px}.legal-index a{font-size:.78rem}}
@media(max-width:420px){.hero-photo{height:245px}.service-card a{grid-template-columns:112px minmax(0,1fr)}.service-photo{height:100%;min-height:225px}.service-copy{padding:18px}.phone-card>strong{font-size:1.55rem}.hero-controls{gap:6px}.hero-dots button{min-width:30px}.hero-pause{padding:10px 6px;font-size:.75rem}.process-list p{font-size:.85rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Services organised by application, with real production photographs. */
.services-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.service-card .service-inner{height:100%;display:flex;flex-direction:column}.service-card a{height:auto}.service-card .service-photo{display:block;height:230px;flex:none}.service-card .service-photo img{width:100%;height:100%;object-fit:contain;object-position:center}.service-card .service-photo .wind-service-image{object-fit:contain;background:#edf0ee}.service-copy{padding:25px;gap:12px}.service-copy h3{min-height:0;font-size:1.2rem;line-height:1.35}.service-copy p{margin-bottom:10px}.service-actions{display:flex;flex-wrap:wrap;gap:8px 18px;border-top:1px solid var(--line);padding-top:10px}.service-card .service-actions a{display:inline-flex;align-items:center;min-height:44px;flex-direction:row;font-size:.82rem;font-weight:700}.service-actions a:last-child{color:var(--red)}.service-actions a:hover{text-decoration:underline;text-underline-offset:4px}
.wind-section{background:#fff}.wind-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(40px,7vw,110px);align-items:center}.wind-visual{background:#edf0ee;border-radius:6px;padding:28px;display:flex;align-items:center;flex-direction:column}.wind-visual img{height:460px;width:100%;object-fit:contain;display:block}.wind-visual p{font-size:.72rem;color:var(--muted);text-align:center;margin:22px 0 0;line-height:1.5}.wind-copy h2{font-size:clamp(2.2rem,3.7vw,3.4rem);line-height:1.12}.wind-intro{font-size:1.02rem;line-height:1.75;color:var(--muted);max-width:540px;margin:24px 0}.wind-uses{list-style:none;padding:0;margin:0 0 30px}.wind-uses li{padding:17px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:155px 1fr;gap:20px}.wind-uses strong{font-size:.93rem}.wind-uses span{color:var(--muted);font-size:.89rem;line-height:1.6}.wind-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px 24px}.wind-actions .text-button{padding:12px 0;text-decoration:underline;text-underline-offset:5px;font-size:.88rem}
@media(max-width:1000px){.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wind-layout{gap:36px}.wind-uses li{grid-template-columns:1fr;gap:6px}.wind-visual img{height:410px}}
@media(max-width:600px){.services-grid{grid-template-columns:1fr;gap:20px}.service-card .service-photo{height:240px}.service-copy{padding:22px}.wind-layout{grid-template-columns:1fr;gap:34px}.wind-visual{padding:20px}.wind-visual img{height:360px}.wind-copy h2{font-size:2.2rem}.wind-uses li{padding:16px 0}.wind-actions{align-items:stretch;flex-direction:column}.wind-actions .button{justify-content:center}.wind-actions .text-button{text-align:center}}

/* Fleet banner: preserve the supplied composition and keep copy clear of vehicles. */
.hero-slide:not([hidden]){animation:hero-enter .45s ease-out}@keyframes hero-enter{from{opacity:.25}to{opacity:1}}
.hero .fleet-banner{width:100%;max-width:none;min-height:620px;height:auto;display:grid;grid-template-columns:minmax(230px,24%) minmax(0,1fr);gap:0;padding:0 0 82px;background:#06264e;align-items:center}
.fleet-picture{display:block;grid-column:2;grid-row:1;min-width:0;width:100%;line-height:0;overflow:hidden}.fleet-picture img{display:block;width:100%;height:auto;object-fit:contain;border-radius:0;aspect-ratio:1599/899}
.hero .fleet-copy.wrap{grid-column:1;grid-row:1;width:100%;padding:36px 0 36px clamp(24px,3.3vw,60px);margin:0;position:relative;z-index:2;max-width:100%}
.hero .fleet-copy h2{font-size:clamp(1.8rem,2.5vw,2.7rem);line-height:1.15;letter-spacing:-.035em;max-width:10em;color:#fff;min-height:0}.fleet-copy h2 span{color:#41c8ff}.hero .fleet-copy .eyebrow{color:#e0efff;font-size:.65rem;margin-bottom:19px;letter-spacing:.14em}.hero .fleet-copy .hero-description{color:#e4ecf6;font-size:clamp(.82rem,1vw,.95rem);line-height:1.65;margin:20px 0 0;max-width:25em;min-height:0}.fleet-copy .hero-actions{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin-top:24px}.fleet-copy .hero-actions .button{font-size:.78rem;padding:13px 15px;min-height:46px;width:100%;max-width:260px;white-space:normal}.fleet-primary{background:#087cb5;color:#fff;box-shadow:0 2px 8px #02152720}.fleet-primary:hover{background:#066b9e}.fleet-outline{background:transparent;border-color:#e8f2ff;color:#fff}.fleet-outline:hover{background:#ffffff12}
@media(min-width:1600px){.hero .fleet-banner{grid-template-columns:minmax(320px,24%) minmax(0,1fr);min-height:660px}.fleet-picture img{max-height:650px;object-fit:contain}.hero .fleet-copy.wrap{padding-left:max(48px,calc((100vw - 1480px)/2))}}
@media(max-width:1100px) and (min-width:701px){.hero .fleet-banner{grid-template-columns:minmax(220px,29%) minmax(0,1fr);min-height:570px}.hero .fleet-copy.wrap{padding:30px 8px 30px 24px}.hero .fleet-copy h2{font-size:1.9rem}.hero .fleet-copy .hero-description{font-size:.86rem}.fleet-copy .hero-actions .button{font-size:.74rem}}
@media(max-width:700px){.hero .fleet-banner{grid-template-columns:1fr;gap:0;min-height:0;padding:0;background:#06264e}.fleet-picture{grid-column:1;grid-row:2;width:100%;margin:0}.fleet-picture img{width:100%;height:auto;aspect-ratio:1599/899;object-fit:contain}.hero .fleet-copy.wrap{grid-column:1;grid-row:1;padding:30px 24px 28px}.hero .fleet-copy h2{font-size:clamp(1.9rem,7vw,2.6rem);max-width:13em;line-height:1.12}.hero .fleet-copy .eyebrow{font-size:.65rem;margin-bottom:17px}.hero .fleet-copy .hero-description{font-size:.91rem;max-width:30em;margin-top:18px}.fleet-copy .hero-actions{gap:10px;flex-direction:column;align-items:stretch;margin-top:21px}.fleet-copy .hero-actions .button{max-width:none;width:100%;min-height:48px;font-size:.84rem}.hero-dots{gap:0}.hero-dots button{min-width:32px;padding-inline:7px}.hero-controls{gap:8px}.hero-pause{min-width:66px;padding-inline:5px}}
@media(prefers-reduced-motion:reduce){.hero-slide:not([hidden]){animation:none}}

/* Photographs retain their full contents in each presentation context. */
.hero-photo{height:auto!important;min-height:0;aspect-ratio:16/9;max-height:560px;background:#121316}.hero-photo .hero-image{width:100%;height:100%;object-fit:contain;object-position:center;transform:none;border-radius:3px}.hero-photo:after{display:none}
.project-photo .portfolio-image{object-fit:contain;object-position:center;transform:none}.project-photo:hover .portfolio-image{transform:none}.project-photo{background:#eef0f2}
.service-card .service-photo{position:relative;height:auto;min-height:0;aspect-ratio:4/3;background:#eef0f2;display:block}.service-card .service-photo .service-image,.service-card .service-photo .wind-service-image{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center;transform:none;background:#eef0f2}.service-card:hover .service-photo img{transform:none}.service-card img{transition:opacity .2s ease}
.wind-visual img{width:auto;height:auto;max-width:100%;max-height:460px;object-fit:contain;object-position:center}
.brand .logo-image{object-fit:contain;object-position:center;max-width:100%;height:auto;transform:none;filter:none}
.fleet-picture{width:100%;max-width:calc(650px * 16 / 9);aspect-ratio:16/9;max-height:650px;align-self:center;justify-self:end}.fleet-picture img{width:100%;height:100%;max-height:none;aspect-ratio:auto;object-fit:contain;object-position:center;transform:none}.hero .fleet-copy{pointer-events:auto}
.gallery .gallery-image{height:clamp(220px,59svh,640px);overflow:visible;display:flex;align-items:center;justify-content:center}.gallery .gallery-image .photo{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center;transform:none}
@media(max-width:900px){.hero-photo{max-height:440px}.hero-photo .hero-image{height:100%}.hero-slide{gap:34px}.service-card .service-photo{height:auto}.wind-visual img{max-height:410px}}
@media(max-width:700px){.hero-photo{max-height:none;aspect-ratio:16/9}.hero-photo .hero-image{height:100%}.service-card .service-photo{height:auto;aspect-ratio:4/3}.fleet-picture{max-height:none;aspect-ratio:16/9}.fleet-picture img{height:100%;aspect-ratio:auto}.gallery .gallery-image{height:clamp(200px,55svh,560px)}.wind-visual img{max-height:360px}}
@media(prefers-reduced-motion:reduce){.hero-slide,.hero-photo img,.service-photo img,.project-photo img{animation:none!important;transition:none!important;transform:none!important}}

@media(max-width:360px){.hero-controls{gap:6px}.hero-controls .icon-button{width:38px;height:38px;min-width:38px}.hero-dots button{min-width:24px;padding-inline:4px}.hero-pause{min-width:60px;font-size:.72rem;padding-inline:3px}}

/* Two institutional banners; only this carousel receives these rules. */
#inicio.institutional-carousel{background:#04132b;overflow:hidden;touch-action:pan-y pinch-zoom}
#inicio .institutional-stage{display:grid;width:100%;max-width:1280px;margin-inline:auto;position:relative;isolation:isolate}
#inicio .institutional-slide{display:grid;grid-template-columns:1fr;grid-area:1/1;position:relative;width:100%;max-width:none;margin:0;padding:0;height:auto;min-height:0;gap:0;opacity:0;z-index:0;pointer-events:none;animation:none!important;transition:opacity 750ms cubic-bezier(.22,1,.36,1);align-items:stretch}
#inicio .institutional-slide.is-active{opacity:1;z-index:2;pointer-events:auto}
#inicio .institutional-slide.is-leaving{opacity:1;z-index:1;pointer-events:none}
#inicio .institutional-picture{display:block;width:100%;aspect-ratio:16/9;grid-area:1/1;overflow:hidden;line-height:0;background:#04132b}
#inicio .institutional-image{display:block;width:100%;height:100%;max-width:100%;object-fit:contain;object-position:center;transform:none!important;filter:none;border-radius:0;animation:none!important;transition:none!important}
#inicio .institutional-copy{position:absolute;left:3.125%;top:28px;width:23%;max-width:300px;z-index:3;pointer-events:auto;text-align:left}
#inicio .institutional-copy>.eyebrow{display:flex;align-items:center;gap:9px;color:#e4f0ff;font-size:.62rem;font-weight:700;letter-spacing:.13em;line-height:1.5;margin:0 0 12px;max-width:none}
#inicio .institutional-copy>.eyebrow:before{content:'';width:18px;height:2px;flex:none;background:#41c8ff}
#inicio .institutional-copy h1,#inicio .institutional-copy h2{font-size:2.05rem;font-weight:700;line-height:1.13;letter-spacing:-.035em;margin:0;min-height:0;max-width:none;color:white}
#inicio .institutional-copy h1 span,#inicio .institutional-copy h2 span{color:#41c8ff}
#inicio .institutional-copy .hero-description{font-size:.82rem;line-height:1.5;color:#e0e8f3;margin:14px 0 0;min-height:0;max-width:none}
#inicio .institutional-copy .hero-actions{display:flex;flex-direction:column;gap:8px;margin:18px 0 0;max-width:none}
#inicio .institutional-copy .button{font-size:.8rem;font-weight:700;min-height:44px;line-height:1.3;white-space:normal;padding:11px 14px;justify-content:center;width:100%;border-radius:4px;transition:background-color .2s ease,border-color .2s ease}
#inicio .institutional-primary{background:#087cb5;color:#fff;border:1px solid #087cb5}
#inicio .institutional-primary:hover{background:#066c9f;border-color:#39b9ef}
#inicio .institutional-outline{background:transparent;color:white;border:1px solid #bfd3ec}
#inicio .institutional-outline:hover{background:#ffffff12;border-color:white}
#inicio .institutional-controls{position:relative;display:grid;grid-template-columns:44px 1fr 44px;align-items:center;width:calc(100% - 48px);max-width:1200px;min-height:76px;margin:auto;gap:12px;border-top:1px solid #ffffff20;padding:0;z-index:5}
#inicio .hero-prev{grid-column:1;grid-row:1}#inicio .hero-next{grid-column:3;grid-row:1}
#inicio .icon-button{width:44px;height:44px;min-width:44px;border:1px solid #ffffff40;background:#ffffff04;color:#eaf4ff;font-size:1.1rem;transition:background-color .2s,border-color .2s}
#inicio .icon-button:hover{background:#ffffff12;border-color:#6cd4ff}
#inicio .hero-dots{grid-column:2;grid-row:1;justify-content:center;gap:0}
#inicio .hero-dots button{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0;border:0;background:transparent}
#inicio .hero-dots button span{display:block;width:8px;height:8px;border-radius:10px;background:#ffffff55;transition:width .25s ease,background-color .25s ease}
#inicio .hero-dots button[aria-pressed=true] span{width:26px;background:#41c8ff}
#inicio .hero-pause{position:absolute;right:68px;min-width:65px;font-size:.78rem;padding:10px 4px;color:#d3e4f6}
#inicio a:focus-visible,#inicio button:focus-visible{outline:3px solid #6cd4ff;outline-offset:4px}
@media(min-width:1280px){#inicio .institutional-copy{transition:transform 750ms cubic-bezier(.22,1,.36,1),opacity 750ms ease;transform:translateX(0);opacity:1}#inicio .institutional-slide:not(.is-active):not(.is-leaving) .institutional-copy{transform:translateX(-8px);opacity:0}}
/* Responsive text is separate from the approved desktop copy. */
#inicio .institutional-mobile-text{display:none}
#inicio .institutional-copy h1 .institutional-desktop-text,#inicio .institutional-copy h2 .institutional-desktop-text{color:white}
@media(max-width:1279px){
 #inicio .institutional-desktop-text{display:none}
 #inicio .institutional-mobile-text{display:inline;color:inherit}
 #inicio .institutional-copy h1 .institutional-mobile-text,#inicio .institutional-copy h2 .institutional-mobile-text{color:white}
 #inicio .institutional-slide{display:flex;flex-direction:column}
 #inicio .institutional-picture{order:0;flex:none}
 #inicio .institutional-copy{position:relative;left:auto;top:auto;order:1;width:100%;max-width:1000px;margin:0 auto;padding:28px max(28px,env(safe-area-inset-right)) 28px max(28px,env(safe-area-inset-left));display:grid;grid-template-columns:.95fr 1.05fr;column-gap:36px;align-content:center;background:linear-gradient(180deg,#071b34,#04132b);min-height:260px}
 #inicio .institutional-copy>.eyebrow{grid-column:1;grid-row:1;align-self:end;font-size:clamp(.68rem,2.5vw,.82rem);margin:0 0 12px}
 #inicio .institutional-copy h1,#inicio .institutional-copy h2{grid-column:1;grid-row:2;align-self:start;font-size:clamp(1.65rem,3.8vw,2.4rem);line-height:1.12}
 #inicio .institutional-copy .hero-description{grid-column:2;grid-row:1;font-size:clamp(.9rem,1.6vw,1rem);line-height:1.5;margin:0;align-self:end}
 #inicio .institutional-copy .hero-actions{grid-column:2;grid-row:2;margin-top:16px;gap:12px}
 #inicio .institutional-copy .button{font-size:.86rem;min-height:48px;padding:12px 14px}
 #inicio .institutional-copy{transition:transform 750ms cubic-bezier(.22,1,.36,1),opacity 750ms ease;transform:translateY(0);opacity:1}
 #inicio .institutional-slide:not(.is-active):not(.is-leaving) .institutional-copy{transform:translateY(6px);opacity:0}
 #inicio .institutional-controls{width:100%;padding-inline:max(20px,env(safe-area-inset-left));min-height:64px;border-top:0;grid-template-columns:48px 1fr 48px}
 #inicio .hero-pause{position:static;grid-column:2;grid-row:2;justify-self:center;padding:4px 10px;min-height:36px;font-size:.78rem}
 #inicio .institutional-controls{grid-template-rows:48px 36px;padding-bottom:12px;gap:0 10px}
 #inicio .hero-dots button{min-width:48px;min-height:48px}
 #inicio .icon-button{width:48px;height:48px;min-width:48px}
}
@media(max-width:600px){
 #inicio .institutional-copy{display:flex;flex-direction:column;justify-content:flex-start;min-height:0;padding:22px max(20px,env(safe-area-inset-right)) 20px max(20px,env(safe-area-inset-left));gap:0;--mobile-title-size:clamp(1.65rem,6.5vw,2.15rem)}
 #inicio .institutional-copy>.eyebrow{align-self:auto;font-size:clamp(.68rem,2.5vw,.78rem);line-height:1.5;margin-bottom:12px;letter-spacing:.1em}
 #inicio .institutional-copy h1,#inicio .institutional-copy h2{font-size:var(--mobile-title-size);line-height:1.12;min-height:calc(var(--mobile-title-size) * 2.24);overflow-wrap:break-word;color:white}
 #inicio .institutional-copy h1 .institutional-mobile-text,#inicio .institutional-copy h2 .institutional-mobile-text{color:white}
 #inicio .institutional-copy .hero-description{font-size:clamp(.9rem,3.6vw,1rem);line-height:1.5;min-height:4.5em;margin-top:12px;align-self:auto;color:#e0e8f3}
 #inicio .institutional-copy .hero-actions{display:grid;grid-template-columns:1fr;gap:12px;width:100%;margin-top:18px}
 #inicio .institutional-copy .button{min-height:48px;font-size:.86rem}
}
@media(max-width:360px){


 #inicio .hero-prev,#inicio .hero-next{display:none}
 #inicio .institutional-controls{grid-template-columns:1fr;grid-template-rows:48px 36px}
 #inicio .hero-dots,#inicio .hero-pause{grid-column:1}
}
@media(max-width:340px){#inicio .institutional-copy .hero-description{min-height:6em}}
@media(prefers-reduced-motion:reduce){#inicio .institutional-slide{transition:opacity 150ms linear!important}#inicio .institutional-copy{transform:none!important;transition:none!important}#inicio .hero-dots button span{transition:none}}
/* Full-width desktop banner, photograph flush right and shade extended left. */
@media(min-width:1280px){
 #inicio .institutional-stage{max-width:none;width:100%}
 #inicio .institutional-slide{min-height:clamp(580px,45vw,720px);background:#04132b}
 #inicio .institutional-picture{width:min(100%,1280px);justify-self:end;align-self:center;position:relative;background:transparent}
 #inicio .institutional-picture:before{content:'';position:absolute;z-index:1;inset:0 auto 0 0;width:25%;background:linear-gradient(90deg,#04132b 0%,#04132be6 15%,#04132b66 55%,transparent 100%);pointer-events:none}
 #inicio .institutional-copy{left:max(40px,calc((100vw - 1480px)/2));top:clamp(40px,5vw,80px);width:300px;max-width:300px}
}

/* Keep five carousel selectors clear of navigation on compact screens. */
#inicio .hero-image-note{font-size:.65rem;line-height:1.45;color:#c4d3e5;margin:12px 0 0}
@media(min-width:361px) and (max-width:600px){#inicio .hero-dots button{min-width:36px;width:36px}#inicio .institutional-controls{column-gap:4px}}
@media(min-width:1280px){#inicio .hero-pause{right:68px}}
