/* Green remains the primary brand colour. Supporting colours stay subtle. */
:root{--accent:#d6ff63;--line:#2c302e;--panel:#111316}
.hero h1 em{background:none;-webkit-text-fill-color:initial;color:var(--accent)}
.hero:after{background:linear-gradient(90deg,#08090bed 0%,#08090b80 45%,#08090b0a 100%),linear-gradient(0deg,#08090b,transparent 35%)}
.btn{background:var(--accent);border-color:var(--accent);box-shadow:none}.btn:hover{background:#e6ffad}.btn.outline{background:transparent;border-color:#ffffff55}.btn.outline:hover{background:transparent;border-color:var(--accent);color:var(--accent)}
.eyebrow{color:var(--accent)}.eyebrow:before{background:var(--accent)}
.page-hero{background:radial-gradient(ellipse at right top,#24362655,transparent 65%),#0c0f0e}.page-hero h1{color:var(--text)}.page-hero .eyebrow{color:var(--accent)}
.dark-panel{background:radial-gradient(ellipse at right top,#19304333,transparent 65%),#111316}
.service-card .number,.service-card .arrow{color:var(--accent)}.service-card{border-color:#343b38}.service-card:first-child{border-bottom-color:var(--accent)}
.trust{border-image:none;border-bottom:1px solid var(--line)}.trust b{color:var(--accent)}
.colour-section{background:radial-gradient(ellipse at right top,#27203c44,transparent 70%),#0d100f;color:var(--text);border-top:1px solid var(--line)}.colour-section h2,.colour-section h3{color:var(--text)}.colour-section p{color:var(--muted)}.colour-section .eyebrow,.colour-section .number{color:var(--accent)}.colour-section .process article{border-color:var(--line)}
.cta{background:var(--accent);color:#10120c}.cta p{color:#343d22}.cta .btn{background:#10120c;color:var(--text);border-color:#10120c}
.footer-top h3{color:var(--muted)}.aside{background:linear-gradient(140deg,#131c1b,#181820);border-color:#343b38}.image-block img{border-color:var(--line)}.security-field{background:#151a17;border-color:#434944}.security-field label{color:var(--accent)}

/* Page-specific photography sits behind the heading, below the navigation. */
.photo-page-hero{position:relative;isolation:isolate;overflow:hidden;min-height:500px;display:flex;align-items:center;padding:52px 0 58px;background:#0c0f0e}
.photo-page-hero .page-hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.photo-page-hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#08090bf2 0%,#08090bd9 35%,#08090b59 70%,#08090b26 100%),linear-gradient(0deg,#08090b9c,transparent 40%)}
.photo-page-hero>.wrap{width:100%}
.photo-page-hero h1{max-width:740px;font-size:clamp(56px,6.3vw,88px);text-wrap:balance}
.photo-page-hero p:not(.eyebrow){max-width:620px;color:#e0e3dc}
.photo-page-hero .breadcrumb{color:#e0e3dc;margin-bottom:26px}
.compact-page-hero{min-height:360px}
.hero{isolation:isolate}
@media(max-width:720px){.photo-page-hero{min-height:420px;padding:34px 0 40px}.photo-page-hero h1{font-size:clamp(48px,10vw,64px)}.photo-page-hero p:not(.eyebrow){font-size:16px}.photo-page-hero:after{background:linear-gradient(90deg,#08090bea,#08090bac),linear-gradient(0deg,#08090b99,transparent 60%)}.photo-page-hero .breadcrumb{margin-bottom:22px}.compact-page-hero{min-height:320px}}
