.hero-slide{opacity:0;transition:opacity .6s ease;pointer-events:none}.hero-slide.is-active{opacity:1}.hero-overview{width:100%;height:100%;left:0;right:0;object-fit:cover;object-position:left 56%}.hero-drilling{object-position:left center}.hero-gallery-controls{position:absolute;bottom:30px;left:6%;display:flex;align-items:center;gap:12px;direction:rtl;z-index:3;background:#050d3bd9;border:1px solid #ffffff45;padding:8px 12px;border-radius:4px;color:#fff}.hero-gallery-controls button{border:1px solid #ffffff55;color:white;background:transparent;width:38px;height:38px;cursor:pointer;font-size:19px;border-radius:3px}.hero-gallery-controls button:hover{background:#00aeef55}.hero-gallery-controls button:focus-visible{outline:3px solid #00aeef;outline-offset:3px}.hero-gallery-status{font-size:12px;min-width:155px;text-align:center}
@media(max-width:760px){.hero-slide{height:300px;top:auto;bottom:0;object-fit:cover;object-position:center}.hero-overview{width:100%;height:300px;object-fit:cover;object-position:left center}.hero-drilling{object-position:left center}.photo-hero:after{background:linear-gradient(180deg,#050d3b 0%,#050d3b 51%,#050d3b00 72%)}.hero-gallery-controls{bottom:35px;left:50%;transform:translateX(-50%);gap:7px;max-width:95%;padding:6px}.hero-gallery-status{font-size:11px;min-width:140px}.hero-gallery-controls button{width:32px;height:32px}.photo-hero-inner{padding-bottom:320px}}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none}}



.footer-top .logo{width:330px;max-width:100%}.footer-top .brand{max-width:100%}.expertise-grid{grid-template-columns:repeat(6,1fr)}.expertise-item{grid-column:span 2}.expertise-item:nth-child(4),.expertise-item:nth-child(5){grid-column:span 3}.expertise-item:nth-child(5){border-left:0}.photo-cta-stacked{padding:0;min-height:0}.photo-cta-stacked:after{display:none}.photo-cta-visual{position:relative;width:100%;background:#10213a}.photo-cta-visual img{display:block;position:static;width:100%;height:auto;object-fit:contain}.photo-cta-copy{padding-block:55px}.photo-cta-stacked .photo-cta-inner{position:relative}.photo-cta-stacked .photo-cta-visual .image-credit{bottom:12px;left:16px}
@media(max-width:760px){.footer-top .logo{width:300px}.expertise-grid{grid-template-columns:1fr 1fr}.expertise-item,.expertise-item:nth-child(4){grid-column:span 1}.expertise-item:nth-child(5){grid-column:1/-1}.photo-cta-copy{padding-block:40px}}

.photo-cta-stacked{position:relative;isolation:isolate}.photo-cta-stacked .photo-cta-visual{min-height:430px}.photo-cta-stacked .photo-cta-visual img{min-height:430px;object-fit:cover}.photo-cta-stacked .photo-cta-copy{position:absolute;inset:0;display:flex;align-items:flex-end;padding-block:60px;background:linear-gradient(0deg,rgba(5,13,59,.97) 0%,rgba(5,13,59,.72) 28%,rgba(5,13,59,.12) 65%,transparent 100%)}.photo-cta-stacked .photo-cta-inner{width:min(1280px,88%)}.photo-cta-stacked .image-credit{z-index:3}
@media(max-width:760px){.photo-cta-stacked .photo-cta-visual,.photo-cta-stacked .photo-cta-visual img{min-height:470px}.photo-cta-stacked .photo-cta-visual img{height:470px;object-position:left center}.photo-cta-stacked .photo-cta-copy{padding-block:42px;background:linear-gradient(0deg,rgba(5,13,59,.98),rgba(5,13,59,.6) 58%,rgba(5,13,59,.1))}.photo-cta-stacked .photo-cta-inner{gap:22px}}
.equipment-tagline{margin:22px 0 0;font-size:24px;font-weight:500;line-height:1.5;color:var(--blue)}@media(max-width:760px){.equipment-tagline{font-size:21px;margin-top:18px}}

.header{background:transparent;border-bottom:1px solid #8ea2b02b;transition:background .2s,color .2s}.header-contact,.header-contact:hover{background:transparent;border:1px solid currentColor}.home-header{color:#fff}.home-header:not(.is-scrolled) .logo img{filter:brightness(0) invert(1)}.home-header:not(.is-scrolled) .menu-toggle span{background:white}.home-header+main{margin-top:-90px}.home-header+main .photo-hero-inner{padding-top:145px}.header.is-scrolled{background:rgba(255,255,255,.9);backdrop-filter:blur(16px);color:var(--navy)}.footer .logo img{filter:none}
@media(max-width:760px){.home-header+main{margin-top:-78px}.home-header+main .photo-hero-inner{padding-top:115px}.home-header nav{color:var(--navy)}.header.is-scrolled .menu-toggle span{background:var(--navy)}}

/* Shared media cards: one size, complete image, no dark letterboxing. */
.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:28px;margin-top:26px;align-items:start}
.media-grid .project-video{margin:0;min-width:0;display:flex;flex-direction:column;align-items:flex-start}
.media-grid .media-visual{position:relative;display:block;width:min(100%,217px);height:auto;aspect-ratio:3/4;margin-inline:auto;overflow:hidden;border-radius:4px;background:#fff}
.media-grid>figure>.media-visual:not(:fullscreen) video,.media-grid>figure>.media-visual .photo-open>img{object-fit:cover}
.media-visual{--media-aspect:.5625}.photo-player,.edited-video .media-visual{--media-aspect:.75}
.project-video video,.photo-open,.photo-open>img{display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;background:#fff}
.photo-open{padding:0;border:0;cursor:zoom-in}
.media-grid .project-video figcaption{width:100%;box-sizing:border-box;min-height:52px;padding-block:12px 8px;font-size:13px;line-height:1.6;color:var(--muted)}
.gallery-intro{font-size:18px;color:var(--muted);max-width:680px}.project-records h3 a:hover{color:var(--blue)}.project-media-section,.gallery-content{scroll-margin-top:110px}.gallery-content .section-heading,.project-media-section .section-heading{margin-bottom:20px}
.video-load{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 12px;min-height:44px;line-height:1.25;background:rgba(5,13,59,.88);border:1px solid #ffffff88;border-radius:5px;color:#fff;font-size:11px;white-space:nowrap;z-index:4;cursor:pointer}
.video-load span{font-size:20px;line-height:1;color:var(--cyan)}.video-load[hidden]{display:none}.video-status{margin:12px 0 0;font-size:14px;color:var(--muted)}.video-status:empty{display:none}
.media-expand{background:transparent;color:var(--blue);border:0;border-bottom:1px solid currentColor;padding:4px 0;font:inherit;font-size:14px;cursor:pointer}
.media-watermark{position:absolute;left:50%;bottom:calc(var(--media-inset-y,0px) + var(--media-render-height,100%)*.05);transform:translateX(-50%);width:calc(var(--media-render-width,100%)*.4);max-width:220px;pointer-events:none;background:transparent;z-index:3;filter:drop-shadow(0 1px 2px rgba(255,255,255,.6))}
.media-watermark>span{position:relative;display:block;width:100%;aspect-ratio:5.75;overflow:hidden}.media-watermark img{position:absolute;top:50%;transform:translateY(-50%);display:block;width:100%;height:auto;max-height:none}
.branded-video .media-watermark{bottom:calc(var(--media-inset-y,0px) + var(--media-render-height,100%)*.13)}
.media-dialog{width:max-content;max-width:95vw;max-height:94dvh;padding:16px;border:1px solid #d9e1eb;border-radius:5px;background:#fff;color:var(--navy);overflow:auto}
.media-dialog::backdrop{background:rgba(0,0,0,.78)}.media-dialog-toolbar{display:flex;justify-content:space-between;margin-bottom:14px;gap:16px}.media-dialog-toolbar button{border:1px solid #bac6d6;background:#fff;color:var(--navy);padding:8px 15px;border-radius:3px;font:inherit;cursor:pointer}
.media-dialog-host{display:flex;justify-content:center}.media-grid .media-dialog .media-visual{width:min(calc(95vw - 32px),calc((88dvh - 80px)*var(--media-aspect)));height:auto;aspect-ratio:var(--media-aspect);margin:0}
.media-visual:fullscreen{width:100vw!important;height:100vh!important;aspect-ratio:auto!important;max-width:none!important;background:#fff}.media-visual:fullscreen video,.media-visual:fullscreen .photo-open{width:100%;height:100%;max-width:none;max-height:none;object-fit:contain}.media-visual:fullscreen .media-watermark{max-width:300px}
@media(max-width:600px){.media-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.media-grid .project-video figcaption{font-size:11px;min-height:48px}.media-expand{font-size:12px}.video-load{font-size:10px;padding:7px 9px;gap:3px}.video-load span{font-size:18px}.gallery-intro{font-size:16px}.media-dialog{padding:12px}.media-dialog-toolbar button{font-size:13px}.media-grid .media-dialog .media-visual{width:min(calc(95vw - 24px),calc((86dvh - 80px)*var(--media-aspect)))}}

/* Real project photographs on the homepage */
.field-section>.wrap{width:100%;max-width:none;padding-inline:10px}.field-section .field-grid{grid-template-columns:1fr 1fr;gap:10px}.field-section .field-image{aspect-ratio:3/4}.field-section .field-reel{aspect-ratio:3/4}.field-reel>img{object-fit:contain;object-position:center}.field-section .center-heading h2{font-size:clamp(28px,3.2vw,44px)}.field-card figcaption{padding-inline:8px}.field-watermark{position:absolute;bottom:5%;left:50%;transform:translateX(-50%);width:30%;pointer-events:none}.field-watermark img{display:block;width:100%;height:auto;filter:drop-shadow(0 0 2px #fff)}
@media(max-width:760px){.field-section>.wrap{padding-inline:6px}.field-section .field-grid{grid-template-columns:1fr;gap:22px}.field-section .center-heading{padding-inline:12px}}

/* Shared footer: visible brand, compact sitemap, labelled contact details. */
.footer{padding-top:28px;background:#f6f9fc;border-top:1px solid var(--line)}
.footer .footer-top{grid-template-columns:1fr 1fr;gap:clamp(24px,3vw,44px);align-items:start;padding-bottom:24px;width:min(850px,88%)}
.footer .footer-top>div{min-width:0}.footer .footer-brand{margin-top:18px}.footer .footer-brand .brand{display:inline-block;max-width:100%}.footer .footer-brand .logo{width:220px;max-width:100%}.footer .footer-brand .logo img{filter:none}
.footer .footer-tagline{font-size:14px;line-height:1.6;color:var(--muted);margin:10px 0 0}.footer h2{font-size:15px;margin:0 0 14px;color:var(--navy)}
.footer-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;list-style:none;margin:0;padding:0}.footer-links a{display:block;font-size:14px;line-height:1.5;color:var(--muted)}.footer a:hover{color:var(--blue)}
.footer .footer-top .footer-phone{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 14px;margin:0;color:var(--navy);font-size:15px;line-height:1.5}.footer-phone bdi{font-size:18px;font-weight:600}
.footer-emails{margin:14px 0 0}.footer-emails>div{margin-bottom:12px}.footer-emails>div:last-child{margin-bottom:0}.footer-emails dt{font-size:12px;line-height:1.5;color:var(--muted);margin:0 0 4px}.footer-emails dd{margin:0}.footer-emails a{font-size:15px;line-height:1.5;color:var(--navy);display:inline-block;overflow-wrap:anywhere}
.footer .footer-bottom{padding-block:16px;gap:20px;align-items:center}
@media(max-width:900px){.footer .footer-top{grid-template-columns:1fr 1fr;gap:24px}.footer .footer-brand{grid-column:auto}}
@media(max-width:600px){.footer{padding-top:24px}.footer .footer-top{grid-template-columns:1fr;gap:22px;padding-bottom:22px}.footer .footer-brand{grid-column:auto;margin-top:16px}.footer .footer-contact{order:1}.footer .footer-sitemap{order:2}.footer .footer-brand .logo{width:200px}.footer .footer-tagline{font-size:13px;margin-top:8px}.footer h2{margin-bottom:12px}.footer-links{gap:10px 20px}.footer .footer-bottom{align-items:flex-start;gap:12px}.footer-emails a{font-size:14px}}

.footer-phone-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px 14px;margin-top:16px}
.footer .footer-phone-row .footer-phone{gap:7px 10px;font-size:14px}.footer .footer-phone-row .footer-phone bdi{font-size:18px}
.footer .footer-whatsapp{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:7px 11px;border:1px solid var(--cyan);border-radius:3px;background:var(--cyan);color:var(--navy);font-size:13px;line-height:1.4;white-space:nowrap}.footer .footer-whatsapp:hover{background:#7bdbff;color:var(--navy)}
.footer .footer-contact .footer-emails{margin-top:0}

.footer-contact-actions{display:inline-flex;align-items:center;gap:8px}
.footer .footer-call{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:7px 12px;border:1px solid var(--navy);border-radius:3px;background:transparent;color:var(--navy);font-size:13px;line-height:1.4;white-space:nowrap}.footer .footer-call:hover{background:var(--navy);color:#fff}

.hero-real{object-position:50% 65%}@media(max-width:760px){.hero-real{height:300px;top:auto;bottom:0;object-position:40% 65%;object-fit:cover}}

.hero-video-panel{position:absolute;inset:0;z-index:-2;overflow:hidden;background:var(--navy)}
.hero-video-panel .hero-foreground-video{position:absolute;top:0;bottom:0;left:26%;transform:translateX(-50%);height:100%;width:auto;max-width:44%;aspect-ratio:9/16;object-fit:contain;z-index:1;mask-image:linear-gradient(to right,transparent,#000 3%,#000 97%,transparent)}
.hero-video-panel .hero-backdrop-video{position:absolute;inset:-4%;width:108%;height:108%;object-fit:cover;filter:blur(26px) brightness(.7) saturate(.85);z-index:0;pointer-events:none}
.hero-video-brand{position:absolute;left:calc(26% - 50px);bottom:80px;width:100px;filter:drop-shadow(0 0 3px white);z-index:2}
[data-home-media] .hero-gallery-controls{left:6%;bottom:16px}
@media(max-width:760px){.hero-video-panel{inset:auto 0 0;height:300px}.hero-video-panel .hero-foreground-video{left:50%;max-width:100%}.hero-video-panel .hero-backdrop-video{filter:blur(20px) brightness(.7) saturate(.85)}.hero-video-brand{left:calc(50% - 42px);bottom:68px;width:84px}[data-home-media] .hero-gallery-controls{bottom:12px}}

@media(max-width:760px){[data-home-media] .hero-gallery-controls{left:50%;transform:translateX(-50%);bottom:12px}}

.field-section .field-image>img{object-fit:contain;object-position:center}.field-section .field-watermark{width:30%;max-width:220px;bottom:3%}

/* Compact field photos; fixed watermark placement without hover motion. */
.field-section .field-grid{width:65%;margin-inline:auto;gap:16px}.field-section .field-watermark{left:0;right:0;bottom:16px;margin-inline:auto;transform:none;width:150px;max-width:40%;transition:none}.field-section .field-watermark img,.field-card a:hover .field-watermark img{width:100%;height:auto;transform:none;transition:none;animation:none}@media(max-width:760px){.field-section .field-grid{width:92%;gap:24px}.field-section .field-watermark{width:130px;bottom:14px}}

/* Shorter shared closing image, with a high-quality single reel photo. */
.photo-cta-stacked .photo-cta-visual,.photo-cta-stacked .photo-cta-visual img{height:clamp(408px,38.4vw,528px);min-height:0}.photo-cta-stacked .photo-cta-visual img{object-fit:cover;object-position:50% 20%}.photo-cta-stacked .photo-cta-copy{padding-block:40px}@media(max-width:760px){.photo-cta-stacked .photo-cta-visual,.photo-cta-stacked .photo-cta-visual img{height:456px;min-height:0}.photo-cta-stacked .photo-cta-visual img{object-position:15% center}.photo-cta-stacked .photo-cta-copy{padding-block:30px}}
/* Fullscreen control inside each project/gallery video player. */
.video-expand-inline{position:absolute;top:8px;right:8px;z-index:5;display:grid;place-items:center;width:40px;height:40px;padding:9px;border:1px solid #ffffff80;border-radius:5px;background:#050d3be8;color:#fff;cursor:pointer;box-shadow:0 2px 8px #0003}
.video-expand-inline svg{width:20px;height:20px;pointer-events:none}.video-expand-inline:hover{background:#0c2857}.video-expand-inline:focus-visible{outline:3px solid #80dcff;outline-offset:3px}.media-visual:fullscreen .video-expand-inline{top:max(12px,env(safe-area-inset-top));right:max(12px,env(safe-area-inset-right))}.media-dialog[open] .video-expand-inline{display:none}
.media-visual:fullscreen{background:#000!important}

/* Fullscreen must show the entire source frame, independently of card crops. */
.media-grid .project-video .media-visual:fullscreen{height:100vh!important;height:100dvh!important;margin:0!important;padding:0!important;border:0!important;border-radius:0}
.media-grid .project-video .media-visual:fullscreen>video{width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;min-width:0;min-height:0;object-fit:contain!important;object-position:center!important;background:#000}
/* Phone enlargement preserves the inline video orientation and source frame. */
@media(hover:none) and (pointer:coarse){
 .video-dialog[open]{display:flex;flex-direction:column;position:fixed;inset:0;width:100vw;max-width:100vw;height:100vh;height:100dvh;max-height:none;margin:0;padding:12px;padding-top:max(12px,env(safe-area-inset-top));padding-bottom:max(12px,env(safe-area-inset-bottom));border:0;border-radius:0;overflow:hidden;background:#000;color:#fff;box-sizing:border-box}
 .video-dialog .media-dialog-toolbar{flex:0 0 auto;min-height:44px;margin-bottom:8px;justify-content:flex-end}
 .video-dialog .media-fullscreen{display:none}
 .video-dialog .media-close{background:#071538;color:#fff;border-color:#ffffff80;min-height:44px}
 .video-dialog .media-dialog-host{flex:1 1 0;min-height:0;min-width:0;width:100%;display:flex;align-items:center;justify-content:center}
 .media-grid .video-dialog .media-dialog-host .media-visual{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;min-width:0;min-height:0;aspect-ratio:auto;margin:0;background:#000}
 .media-grid .video-dialog .media-visual>video{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center;background:#000}
}
@media(hover:none) and (pointer:coarse){.project-video video::-webkit-media-controls-fullscreen-button{display:none}}
