/* Ingenx Studio — Cloudflare independent rebuild. No Nicepage CSS/JS dependencies. */
:root{--green:#27c851;--green-deep:#16a343;--ink:#161616;--muted:#555;--cream:#f5f5f5;--edge:#dedede;--max:1140px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:16px/1.65 Arial,Helvetica,sans-serif;color:var(--ink);background:white}a{color:#168b42;text-underline-offset:3px}a:hover{color:#0d722c}h1,h2,h3{line-height:1.23;font-weight:700;margin:0 0 .7em}h1{font-size:clamp(2.2rem,4vw,3rem)}h2{font-size:clamp(1.55rem,3vw,2.3rem)}h3{font-size:1.25rem}p{margin:0 0 1.2em}.shell{max-width:var(--max);padding-left:24px;padding-right:24px;margin:auto}.section{padding-top:65px;padding-bottom:65px}.skip{position:absolute;top:-60px;left:8px;z-index:999;background:#fff;padding:10px}.skip:focus{top:4px}.site-header{background:#090909;color:#fff}.header-inner{min-height:138px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand img{max-width:260px;width:100%;height:auto;display:block}.brand{display:block;flex:0 0 250px}.site-header nav{display:flex;align-items:center;gap:21px;flex-wrap:wrap}.site-header nav a{color:#fff;text-decoration:none;font-size:15px}.site-header nav a:hover,.site-header nav a[aria-current]{color:#4cda74}.menu-toggle{display:none}.footer{background:#303030;color:white;padding:26px 0}.footer-inner{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:14px}.footer a{color:#fff}.home-video{background:#000;display:flex;justify-content:center}.home-video video{display:block;width:100%;max-height:620px;aspect-ratio:16/7;object-fit:contain;background:#000}.lead{font-size:clamp(1.25rem,2.1vw,1.7rem);line-height:1.55;max-width:950px;margin:0 auto 25px}.intro{text-align:center}.atom{object-fit:contain;margin:15px auto;display:block}.pale{background:#f3f3f3}.two-choices{display:grid;grid-template-columns:1fr 1fr;gap:28px}.choice{overflow:hidden;background:#fff;box-shadow:0 4px 20px #00000011}.choice>img{width:100%;height:260px;object-fit:cover;display:block}.choice-body{padding:26px 28px 34px}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:12px;color:var(--green-deep);font-weight:700}.button{display:inline-block;border:2px solid var(--green);background:var(--green);color:#0b2514;text-decoration:none;font:700 15px Arial,sans-serif;padding:13px 19px;border-radius:5px;cursor:pointer;max-width:100%;text-align:center}.button:hover{background:var(--green-deep);border-color:var(--green-deep);color:white}.button.outline{background:transparent}.button.outline:hover{background:var(--green);color:#071509}.button.dark{background:#222;border-color:#222;color:#fff}.button.dark:hover{background:#0f8c3b;border-color:#0f8c3b}.button.whatsapp{background:#24cf64;border-color:#24cf64;color:#062c10}.split{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start}.map{overflow:hidden;background:#ddd;min-height:350px}.map iframe{width:100%;height:430px;display:block;border:0}.field{margin-bottom:18px}.field label,fieldset legend{display:block;font-weight:600;margin-bottom:7px}.field input,.field textarea,.field select{width:100%;min-height:44px;padding:11px;border:1px solid #bbb;border-radius:3px;background:white;font:inherit;color:#1c1c1c}.field textarea{resize:vertical}fieldset{border:1px solid #ddd;padding:14px 18px;margin:22px 0}fieldset legend{padding:0 8px}.checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.checks label{display:flex;align-items:center;gap:9px;font-size:15px}.checks input{accent-color:var(--green-deep)}.form-info{font-size:13px;color:#666;margin:12px 0 0}.contact-short{margin-top:20px}.page-intro{max-width:1030px;text-align:center}.page-intro p{text-align:center}.photo-gallery{padding-bottom:60px}.gallery-main{position:relative;background:#111;min-height:300px}.gallery-main>img{display:block;width:100%;aspect-ratio:16/8;object-fit:contain;background:#151515}.gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:58px;border:0;background:#333a;color:#fff;font-size:38px;cursor:pointer;z-index:1}.gallery-arrow:hover{background:#111c}.gallery-arrow.prev{left:0}.gallery-arrow.next{right:0}.gallery-counter{position:absolute;right:12px;bottom:12px;background:#0009;color:#fff;padding:2px 10px;border-radius:3px}.gallery-thumbnails{display:flex;gap:9px;overflow-x:auto;padding:12px 0;scrollbar-width:thin}.thumb{flex:0 0 100px;height:66px;padding:0;border:3px solid transparent;cursor:pointer;background:transparent}.thumb img{width:100%;height:100%;object-fit:cover}.thumb.active,.thumb:hover{border-color:var(--green)}.feature{align-items:center}.feature>img{width:100%;max-height:410px;object-fit:cover}.ticks{padding:0;list-style:none}.ticks li:before{content:'✓';color:var(--green-deep);font-weight:700;margin-right:10px}.price{font-size:1.7rem}.location-panel{text-align:center}.narrow{max-width:790px}.center{text-align:center}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.booking-area{border-top:1px solid #ddd}.showreel-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}.video-frame{aspect-ratio:16/9;background:#101010}.video-frame iframe{width:100%;height:100%;border:0;display:block}.text-content{text-align:left;max-width:980px;margin:0 auto}.wide-photo{display:block;width:100%;max-height:450px;object-fit:cover}.contact-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:24px 0}.contact-cards>div{padding:26px;text-align:center;background:#fff}.contact-cards p{overflow-wrap:anywhere}.dark-panel{background:#111;color:#fff;padding:28px}.dark-panel .field label{color:#fff}.dark-panel .form-info{color:#ccc}.contact-page>.contact-form{margin:35px 0}.gap-top{margin-top:50px}.contact-page .booking-form{margin-top:22px}@media(max-width:860px){.header-inner{min-height:92px;flex-wrap:wrap;padding-top:10px;padding-bottom:10px}.brand{flex:0 1 200px}.menu-toggle{display:inline-flex;align-items:center;gap:10px;background:#1a1a1a;border:1px solid #777;color:white;padding:8px 13px;font:inherit;cursor:pointer}.site-header nav{display:none;flex-basis:100%;flex-direction:column;align-items:stretch;gap:0;padding:10px 0}.site-header nav.open{display:flex}.site-header nav a{padding:10px;border-top:1px solid #444}.section{padding-top:45px;padding-bottom:45px}.choice>img{height:200px}}@media(max-width:690px){.split,.two-choices,.showreel-grid,.contact-cards,.form-grid{grid-template-columns:1fr}.shell{padding-left:18px;padding-right:18px}.home-video video{aspect-ratio:16/9}.checks{grid-template-columns:1fr}.contact-cards{gap:10px}.feature>img{max-height:300px}.gallery-main>img{aspect-ratio:16/10}.choice-body{padding:21px}}

/* v2: Full-viewport cinematic homepage video. Works on desktop, tablet and mobile. */
.home-video{position:relative;isolation:isolate;display:block;width:100%;height:calc(100vh - 138px);height:calc(100svh - 138px);min-height:470px;max-height:1100px;overflow:hidden;background:#050505}
.home-video .hero-video{position:absolute;inset:0;width:100%;height:100%;max-height:none;aspect-ratio:auto;object-fit:cover;object-position:center top;display:block;z-index:-2;background:#050505}
.hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,transparent 20%,rgba(0,0,0,.18) 52%,rgba(0,0,0,.78) 100%);pointer-events:none}
.hero-content{display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;gap:24px;height:100%;padding-top:35px;padding-bottom:36px;color:#fff}
.hero-copy{max-width:min(800px,100%);text-shadow:0 2px 14px rgba(0,0,0,.7)}
.hero-eyebrow{text-transform:uppercase;letter-spacing:.21em;color:#69ec91;font-weight:700;font-size:.8rem;margin:0 0 10px}
.hero-copy h1{font-size:clamp(2.1rem,5.6vw,4.65rem);line-height:1.07;margin:0 0 14px}
.hero-copy>p:not(.hero-eyebrow){font-size:clamp(1.06rem,2vw,1.4rem);line-height:1.45;margin-bottom:19px}
.hero-cta{color:#071c0b;text-shadow:none}
.video-controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.video-control{font:600 .91rem Arial,sans-serif;background:rgba(0,0,0,.7);border:1px solid rgba(255,255,255,.45);color:white;border-radius:6px;padding:11px 15px;cursor:pointer;min-height:44px;backdrop-filter:blur(6px)}
.video-control:hover,.video-control:focus-visible{border-color:#78f0a0;background:#123d22;outline-offset:2px}
.video-status{position:absolute;top:12px;left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100% - 30px);color:white;background:#111c;padding:10px 15px;border-radius:5px;font-size:.9rem}
/* Keep the showreels visible and provide fallback links if a browser blocks an embed. */
.showreel-item{min-width:0;background:#f6f6f6}
.showreel-meta{padding:15px 17px 20px}
.showreel-meta h2{font-size:1.04rem;line-height:1.4;margin:0 0 7px}
.showreel-meta a{font-size:.92rem;font-weight:700}
@media(max-width:860px){.home-video{height:calc(100vh - 92px);height:calc(100svh - 92px);min-height:450px}}
@media(max-width:690px){.home-video{height:calc(100vh - 92px);height:calc(100svh - 92px);min-height:450px;max-height:800px}.home-video .hero-video{aspect-ratio:auto;object-fit:cover;object-position:center top}.hero-content{padding-bottom:25px;gap:19px}.hero-copy h1{font-size:clamp(2.05rem,8vw,3.2rem)}.hero-copy>p:not(.hero-eyebrow){font-size:1rem}.video-control{font-size:.86rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}


/* VERSION 3: Inspired directly by the supplied October 2026 Nicepage screenshots.
   Bright green sampled from the original Ingenx logo in the screenshots: #00FF2A.
   Important: original artwork is referenced unchanged by its original Nicepage CDN URLs.
*/
:root { --green:#00ff2a; --green-deep:#00b91e; --brand-green:#00ff2a; --max:1140px; }
body {font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.52;color:#171717;background:#fff}
h1,h2,h3 {font-weight:400;line-height:1.2}
a {color:#00a51b} a:hover {color:#008217}
.site-header {background:#000}
.header-inner {min-height:112px;gap:22px}
.brand {flex:0 0 205px;display:flex;align-items:center;justify-content:center}
.brand img {width:205px;max-width:100%;height:auto;object-fit:contain;display:block}
.site-header nav {gap:30px;flex-wrap:nowrap}
.site-header nav a,.site-header nav a[aria-current] {color:var(--brand-green);font-size:14px;font-weight:500;text-decoration:none;white-space:nowrap}
.site-header nav a:hover,.site-header nav a:focus-visible {color:#fff;text-decoration:underline;text-decoration-color:var(--brand-green);text-underline-offset:7px}
.site-header nav a[aria-current] {text-decoration:underline;text-decoration-color:var(--brand-green);text-underline-offset:7px}
.site-header nav a[aria-current]:hover{color:#fff}
.section {padding-top:48px;padding-bottom:48px}
.page-intro {max-width:900px;padding-top:14px;padding-bottom:28px}
.page-intro h1, .contact-page h1,.showreels-page h1 {font-size:clamp(1.8rem,3vw,2.15rem);text-align:center;margin:0 0 17px}
.page-intro p {font-size:14px;line-height:1.55;margin-bottom:0}
.page-intro .text-content {max-width:900px}
.atom {width:36px;height:40px;object-fit:contain;margin:12px auto;display:block}
.text-atom {width:36px;height:40px;object-fit:contain;margin:10px auto}
.studio-page .page-intro p {max-width:860px;margin-left:auto;margin-right:auto}
.studio-page .photo-gallery {max-width:960px;padding-bottom:28px}
.studio-page .gallery-main {min-height:220px;background:white}
.studio-page .gallery-main > img {aspect-ratio:16/8.65;object-fit:cover;background:#f0f0f0}
.studio-page .gallery-arrow {width:38px;height:40px;font-size:30px;border-radius:50%;background:#666b}
.studio-page .gallery-arrow.prev {left:9px} .studio-page .gallery-arrow.next {right:9px}
.studio-page .gallery-thumbnails {gap:5px;padding-top:6px}
.studio-page .thumb {flex-basis:80px;height:52px;border-width:2px}
.studio-page .thumb.active,.studio-page .thumb:hover {border-color:var(--brand-green)}
.about-page .page-intro {padding-bottom:13px}
.about-page .page-intro .text-content p {text-align:left}
.about-contact-area {padding:0;background:#fff}
.about-photo-scene {background-image:url('https://assets.nicepagecdn.com/8b8547c7/6647765/images/20260607_130229.jpg');background-size:cover;background-position:center center;min-height:340px;padding:56px 0 46px}
.about-photo-scene .contact-cards {max-width:820px;margin:0 auto;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr))}
.contact-cards>div {min-height:170px;padding:23px 16px 15px;box-shadow:0 4px 16px #0002}
.contact-cards h3 {font-size:14px;font-weight:700;text-transform:uppercase;margin:9px 0 11px}
.contact-cards p {font-size:14px;line-height:1.45}
.contact-icon {color:var(--brand-green);width:39px;height:39px;margin:0 auto;display:block}
.contact-icon svg {display:block;width:100%;height:100%}
.about-contact-area>.shell>.split {padding-top:40px;padding-bottom:40px}
.dark-panel h2 {color:var(--brand-green)}
/* The Nicepage showreels use a narrow, centred column with stacked videos. */
.showreels-page main>.section {padding-top:14px}
.showreels-page .showreel-grid {max-width:570px;margin:0 auto;display:grid;grid-template-columns:1fr;gap:13px}
.showreels-page .showreel-item {background:#fff}
.showreels-page .showreel-meta {padding:7px 2px 10px}
.showreels-page .showreel-meta h2 {font-size:14px;font-weight:600;margin:0 0 4px}
.showreels-page .video-frame {aspect-ratio:16/9}
/* Centre the enquiry and booking layout like the Nicepage reference. */
.contact-route main > section.contact-page {max-width:630px;padding-top:12px;padding-bottom:60px}
.contact-page>p.center {font-size:14px;line-height:1.6}
.contact-page .contact-form {width:100%;max-width:455px;margin-left:auto;margin-right:auto}
.contact-page .button.whatsapp {background:#1dcd59;border-color:#1dcd59;color:#fff;font-weight:700;font-size:17px;margin:10px auto}
.contact-page .button.whatsapp:hover {background:#0dae44;border-color:#0dae44}
.contact-page .button.dark {background:#478ac9;border-color:#478ac9;color:#fff;font-weight:400;font-size:13px;padding:8px 15px;border-radius:0}
.contact-page .field {margin-bottom:12px}
.contact-page .field label {font-weight:400;font-size:13px;margin-bottom:2px}
.contact-page .field input,.contact-page .field textarea,.contact-page .field select {min-height:39px;padding:8px 9px;border:1px solid #ccc;border-radius:0;font-size:14px}
.contact-page .gap-top {margin-top:26px}
.contact-page .gap-top h2 {font-weight:400;font-size:clamp(1.7rem,3vw,2rem)}
.contact-page .form-grid {grid-template-columns:1fr}
.button.outline {color:#0d5616;border-color:var(--green)}
.button.outline:hover {background:var(--brand-green);border-color:var(--brand-green);color:#080808}
.button.hero-cta,.button:not(.dark):not(.whatsapp) {background:var(--brand-green);border-color:var(--brand-green);color:#071a0a}
.button.hero-cta:hover,.button:not(.dark):not(.whatsapp):hover {background:#06cd2b;border-color:#06cd2b}
.eyebrow,.hero-eyebrow,.ticks li:before {color:#00c125}
/* Keep v2's responsive autoplay video area, adjusting only for the revised header. */
.home-video {height:calc(100vh - 112px);height:calc(100svh - 112px)}
@media(max-width:860px){
 .header-inner {min-height:88px;padding-top:9px;padding-bottom:9px}
 .brand {flex-basis:165px}.brand img {width:165px}
 .site-header .menu-toggle {display:inline-flex;color:var(--brand-green);border-color:var(--brand-green)}
 .site-header nav {flex-wrap:wrap;gap:0}
 .site-header nav a {padding:10px 12px}
 .home-video {height:calc(100svh - 88px);min-height:440px}
 .about-photo-scene .contact-cards {max-width:95%}
}
@media(max-width:690px){
 .page-intro {padding-top:20px;padding-bottom:22px}
 .page-intro p {font-size:14px}
 .about-photo-scene {padding:28px 0;min-height:auto}
 .about-photo-scene .contact-cards {display:grid;grid-template-columns:1fr;max-width:350px}
 .contact-cards>div {min-height:unset;padding:22px}
 .showreels-page .showreel-grid {max-width:100%}
 .home-video {height:calc(100svh - 88px)}
 .studio-page .gallery-main > img {aspect-ratio:16/10}
}

/* V3 layout correction: edge-to-edge image backdrop, contained enquiry/map below. */
.about-contact-area > .about-form-map {padding-top:40px;padding-bottom:40px}
