:root{--bg:#080b09;--ink:#111612;--forest:#151c16;--green:#37a900;--green-dark:#247400;--stone:#edf1eb;--paper:#f7f9f5;--warm:#e4e9df;--line:rgba(255,255,255,.22);--max:1440px;--display:'Barlow Condensed',Impact,'Arial Narrow',sans-serif;--sans:Manrope,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--paper);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{font:inherit}::selection{background:var(--green);color:#0b100d}:focus-visible{outline:2px solid var(--green);outline-offset:4px}
.skip{position:absolute;left:-9999px;top:8px;z-index:500;padding:12px 18px;background:var(--paper);color:var(--ink)}.skip:focus{left:12px}
.shell{width:min(calc(100% - 9vw),var(--max));margin-inline:auto}.label{font:700 10px/1.4 'DM Sans',Arial,sans-serif;letter-spacing:.3em;text-transform:uppercase}.line-mark{display:inline-block;width:43px;height:1px;background:var(--green);vertical-align:middle;margin-right:16px}.display{font:400 clamp(3.6rem,7.5vw,8.5rem)/1.04 var(--display);letter-spacing:-.065em}.display em,.section-title em,.essay-title em{font-weight:400;color:var(--green)}.body-copy{font-size:clamp(14px,1.1vw,17px);line-height:1.95;color:#c5ccc3}.body-copy.dark{color:#4d5a4e}.arrow-link{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-height:55px;padding:14px 20px;background:var(--green);color:#122014;font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;transition:background .25s,transform .25s}.arrow-link:hover{background:#45c400;transform:translateY(-2px)}.arrow-link .arr{font-size:20px;font-weight:400;line-height:1}.bare-link{font-size:10px;text-transform:uppercase;letter-spacing:.2em;font-weight:700;padding-bottom:9px;border-bottom:1px solid currentColor;transition:color .2s}.bare-link:hover{color:var(--green)}
.progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:1000;transform-origin:left;transform:scaleX(0);background:var(--green);pointer-events:none}.site-header{position:absolute;top:0;left:0;right:0;z-index:90;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:31px 4.5%;border-bottom:1px solid rgba(255,255,255,.2);transition:background .3s,padding .3s}.site-header.scrolled{position:fixed;background:rgba(10,16,12,.95);backdrop-filter:blur(18px);padding-block:18px}.brand{flex:none}.brand img{width:186px;height:auto}.main-nav{display:flex;align-items:center;gap:34px}.main-nav>a,.nav-parent>a{font:700 10px var(--sans);letter-spacing:.17em;text-transform:uppercase;white-space:nowrap}.main-nav>a:hover,.nav-parent>a:hover,.main-nav>a[aria-current=page]{color:var(--green)}.nav-parent{position:relative}.nav-parent>a{padding-block:20px;display:block}.subnav{position:absolute;top:100%;left:-25px;width:290px;background:#121912;border:1px solid #445748;padding:16px 22px;display:none;box-shadow:0 22px 45px rgba(0,0,0,.25)}.nav-parent:hover .subnav,.nav-parent:focus-within .subnav{display:block}.subnav a{display:block;padding:11px 2px;border-bottom:1px solid #344238;font-size:12px;color:#d9e0d5}.subnav a:hover{color:var(--green)}.subnav a:last-child{border:0}.main-nav .nav-action{border:1px solid rgba(255,255,255,.48);padding:16px 20px;display:flex;gap:19px;align-items:center}.main-nav .nav-action span{font-size:16px;color:var(--green)}.menu-button{display:none;background:none;border:1px solid #7b8e79;color:white;padding:10px 13px;font-size:12px;letter-spacing:.17em;text-transform:uppercase}
.hero{position:relative;min-height:840px;height:100svh;max-height:1080px;display:flex;align-items:center;overflow:hidden;isolation:isolate;background:#111b14}.hero.interior{min-height:630px;height:75svh;max-height:850px}.hero-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-3;transform:scale(1.07);animation:hero-settle 2.3s cubic-bezier(.2,.65,.2,1) both}.hero:after{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(5,11,7,.93),rgba(5,11,7,.66) 40%,rgba(5,11,7,.08) 85%),linear-gradient(0deg,rgba(3,8,5,.6),transparent 31%)}.hero-content{padding-top:84px;position:relative}.hero .label{color:#d8f0ce}.hero h1{margin:28px 0 27px;max-width:940px}.hero.interior h1{font-size:clamp(4rem,7vw,7.4rem);max-width:890px}.hero .lead{max-width:545px;margin:0 0 37px}.hero-actions{display:flex;align-items:center;gap:30px;flex-wrap:wrap}.hero-breadcrumbs{display:flex;gap:11px;align-items:center;color:#c1cebd;font-size:10px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:23px}.hero-breadcrumbs a:hover{color:var(--green)}.hero-edge{position:absolute;bottom:42px;left:4.5%;display:flex;align-items:center;gap:15px;color:#c3cfc0;font:700 9px var(--sans);letter-spacing:.17em;text-transform:uppercase}.hero-edge:before{content:"";width:47px;height:1px;background:var(--green)}.hero-side{position:absolute;bottom:42px;right:4.5%;text-align:right;color:#c5cfc2;font:600 9px/1.8 var(--sans);letter-spacing:.15em;text-transform:uppercase}.vertical-word{position:absolute;right:4.5%;top:37%;writing-mode:vertical-rl;color:rgba(255,255,255,.5);font:600 9px var(--sans);letter-spacing:.45em;text-transform:uppercase}
.after-hero{background:#edf1eb;color:#1a2119;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:17px 4.5%;font:700 9px/1.5 var(--sans);letter-spacing:.15em;text-transform:uppercase}.after-hero .divider{height:1px;flex:1;background:#9a9f90;max-width:90px}.intro{background:var(--paper);color:var(--ink);padding:150px 0 160px}.intro-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:12%}.intro .label,.light .label{color:#247400}.section-title{font:400 clamp(3rem,5vw,6rem)/1.15 var(--display);letter-spacing:-.055em;margin:0}.intro-text{max-width:700px}.intro-text p{margin:25px 0 0;font-size:clamp(15px,1.18vw,18px);line-height:1.9;color:#4a564b}.micro-list{display:flex;gap:30px;flex-wrap:wrap;margin-top:36px;color:#374b3c;font:700 10px var(--sans);text-transform:uppercase;letter-spacing:.12em}.micro-list span:before{content:'✧';color:#247400;margin-right:10px}
.services-home{background:#101411;padding:140px 0 160px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:65px}.section-head .section-title{max-width:800px}.section-head p{max-width:330px;color:#bac8b8;font-size:14px;line-height:1.8}.service-list{border-top:1px solid #425348}.service-row{position:relative;display:grid;grid-template-columns:70px 1fr 280px 40px;align-items:center;gap:20px;padding:24px 10px;border-bottom:1px solid #425348;min-height:122px;transition:background .25s,padding .25s}.service-row:hover,.service-row:focus-visible{background:#18231a;padding-inline:20px}.service-row .count{font:700 11px var(--sans);letter-spacing:.15em;color:var(--green)}.service-row h3{font:400 clamp(28px,3.6vw,53px)/1.1 var(--display);letter-spacing:-.04em;margin:0}.service-row p{font-size:12px;line-height:1.7;color:#a9b9a8;margin:0}.service-row .icon{font-size:21px;color:var(--green)}
.feature-band{position:relative;min-height:720px;display:flex;align-items:end;padding:130px 0 110px;overflow:hidden;isolation:isolate}.feature-band img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-3}.feature-band:after{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(7,13,9,.82),rgba(7,13,9,.27)),linear-gradient(0deg,rgba(7,13,9,.8),transparent 55%)}.feature-band .shell{position:relative}.feature-band .section-title{max-width:850px;margin:22px 0 25px}.feature-band p{max-width:550px;color:#d0d9ce;line-height:1.8}.feature-band .bare-link{display:inline-block;margin-top:30px}
.method{background:var(--stone);color:var(--ink);padding:145px 0}.method-top{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:end}.method-top p{color:#536053;font-size:16px;line-height:1.9}.method-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:85px}.method-step{border-top:1px solid #a9b1a3;padding-top:23px}.method-step .label{color:#247400}.method-step h3{font:400 32px var(--display);letter-spacing:-.04em;margin:45px 0 15px}.method-step p{font-size:13px;line-height:1.9;color:#4d5a4e;margin:0}
.coverage{background:#141b15;color:var(--paper);padding:130px 0}.coverage-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%}.coverage p{color:#c0cfc0;font-size:15px;line-height:1.9;max-width:580px}.places{display:grid;grid-template-columns:1fr 1fr;gap:0 25px;align-content:center}.places span{padding:18px 0;border-bottom:1px solid #5d6f60;font:400 26px var(--display)}
.cta-section{background:#101411;color:var(--paper);padding:130px 0}.cta-grid{display:grid;grid-template-columns:1fr .8fr;gap:14%;align-items:center}.cta-grid .section-title{margin:20px 0 25px}.cta-grid p{color:#c4d1c1;font-size:15px;line-height:1.85}.contact-panel{padding:42px;border:1px solid #526454}.contact-panel .label{color:#a9ca96}.contact-panel a:not(.arrow-link){display:block;font:400 clamp(22px,2vw,30px) var(--display);margin:9px 0 28px;overflow-wrap:anywhere}.contact-panel a:hover{color:var(--green)}.contact-panel .arrow-link{width:100%}
.page-content{background:var(--paper);color:var(--ink);padding:125px 0 145px}.page-grid{display:grid;grid-template-columns:.53fr 1fr;gap:13%}.page-grid aside{font-size:12px;line-height:1.8;color:#52634f}.page-grid aside .label{color:#247400}.essay-title{font:400 clamp(2.8rem,4.6vw,5.5rem)/1.16 var(--display);letter-spacing:-.05em;margin:0 0 25px}.prose{max-width:780px;color:#3f4c41;font-size:16px;line-height:1.9}.prose p{margin:0 0 22px}.prose h2{font:400 36px/1.2 var(--display);letter-spacing:-.035em;color:#162019;margin:54px 0 22px}.prose h3{font:500 24px/1.25 var(--display);margin:40px 0 15px}.prose ul{margin:0 0 25px;padding-left:22px}.prose li{padding:7px 0}.prose strong{color:#1b2d21}.content-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:70px}.content-card{border-top:1px solid #aab8a6;padding:22px 15px 10px 0}.content-card .label{color:#247400}.content-card h3{font:400 28px var(--display);margin:25px 0 14px}.content-card p{color:#566355;font-size:13px;line-height:1.8}.related{background:#111812;padding:105px 0}.related h2{font:400 clamp(2.8rem,4vw,4.8rem) var(--display);margin:20px 0 40px;letter-spacing:-.04em}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.related a{border:1px solid #536b56;padding:28px;min-height:200px;display:flex;flex-direction:column;justify-content:space-between;transition:background .2s}.related a:hover{background:#1d2b20}.related .label{color:var(--green)}.related h3{font:400 31px var(--display);margin:0}.related .arr{color:var(--green)}
.service-landing{padding:130px 0 150px;background:var(--paper);color:var(--ink)}.service-landing .intro-grid{margin-bottom:70px}.service-landing .section-title{max-width:850px}.service-landing p{max-width:650px;color:#4e5b4e;font-size:16px;line-height:1.9}.services-catalogue{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.catalogue-card{min-height:450px;position:relative;overflow:hidden;isolation:isolate;padding:38px;display:flex;flex-direction:column;justify-content:space-between;color:white}.catalogue-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .7s}.catalogue-card:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(5,12,7,.86),transparent 70%),rgba(5,10,7,.16)}.catalogue-card:hover img{transform:scale(1.04)}.catalogue-card .label{color:#d8f0ce}.catalogue-card h2{font:400 clamp(35px,3.4vw,55px) var(--display);letter-spacing:-.05em;margin:0 0 10px}.catalogue-card p{color:#d0dad0;font-size:13px;margin:0 0 23px;max-width:390px}.catalogue-card .bare-link{font-size:10px}
.faq{background:#edf1eb;color:var(--ink);padding:110px 0}.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:10%}.faq .section-title{font-size:clamp(2.8rem,4vw,5rem)}details{border-top:1px solid #aab5a7}details:last-child{border-bottom:1px solid #aab5a7}summary{list-style:none;cursor:pointer;padding:23px 45px 23px 0;font:500 20px var(--display);position:relative}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:0;top:22px;color:#247400;font:400 22px var(--sans)}details[open] summary:after{content:'−'}details p{font-size:14px;line-height:1.8;color:#4b584b;margin:0 0 24px}
.site-footer{background:#080b09;padding:70px 4.5% 30px;color:#bccbbc}.footer-main{display:grid;grid-template-columns:1.35fr 1fr 1fr 1fr;gap:40px}.footer-main img{width:190px;height:auto}.footer-main p{font-size:12px;line-height:1.8;max-width:250px}.footer-col .label{color:#37a900;margin-bottom:18px}.footer-col a{display:block;font-size:12px;padding:6px 0}.footer-col a:hover{color:var(--green)}.footer-bottom{border-top:1px solid #354339;margin-top:65px;padding-top:24px;display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap;font-size:10px;letter-spacing:.08em;line-height:1.7}.concept-note{opacity:.75}
.footer-social{margin-top:29px}.footer-social-label{display:block;color:#37a900;font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;margin-bottom:14px}.footer-social-links{display:flex;flex-wrap:wrap;gap:10px}.footer-social-links a{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid #45604b;border-radius:50%;color:#e7f0e7;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease}.footer-social-links a:hover{background:#37a900;border-color:#37a900;color:#080b09;transform:translateY(-2px)}.footer-social-links a:focus-visible{outline:2px solid #37a900;outline-offset:4px}.footer-social-links svg{display:block;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.footer-social-links .icon-fill,.footer-social-links .icon-dot{fill:currentColor;stroke:none}
[data-reveal]{opacity:1;transform:translateY(9px);transition:transform .8s cubic-bezier(.2,.7,.2,1)}[data-reveal].visible{transform:none}.hero .label,.hero h1,.hero .lead,.hero-actions{animation:rise-in 1s both}.hero h1{animation-delay:.12s}.hero .lead{animation-delay:.22s}.hero-actions{animation-delay:.32s}@keyframes rise-in{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@keyframes hero-settle{from{opacity:.5;transform:scale(1.07)}to{opacity:1;transform:scale(1)}}
/* Brand alignment: the approved social series uses a tall condensed headline,
   bright Cobra green, white, and near-black. Body copy stays calmer for reading. */
.display,.section-title,.essay-title,.service-row h3,.method-step h3,.places span,.prose h2,.prose h3,.content-card h3,.related h2,.related h3,.catalogue-card h2,.contact-panel a:not(.arrow-link){font-family:var(--display);font-weight:600;letter-spacing:.008em;text-transform:uppercase}
.display,.section-title,.essay-title{line-height:.95}
.display em,.section-title em,.essay-title em{font-style:normal;font-weight:600}
.service-row h3,.catalogue-card h2,.related h3{line-height:1}
.prose h2,.prose h3,.method-step h3,.content-card h3{letter-spacing:.015em}
.label{font-weight:700;letter-spacing:.26em}
.line-mark{height:2px;background:var(--green)}
.arrow-link{color:#071307}.arrow-link:hover{background:#45c400}
.hero .label,.related .label,.contact-panel .label{color:#bde9a8}
.service-row .count,.service-row .icon,.related .arr{color:var(--green)}
.site-header.scrolled{background:rgba(8,11,9,.96)}
.hero:after{background:linear-gradient(90deg,rgba(3,6,4,.94),rgba(3,6,4,.7) 42%,rgba(3,6,4,.09) 86%),linear-gradient(0deg,rgba(2,5,3,.68),transparent 32%)}
.feature-band:after{background:linear-gradient(90deg,rgba(3,6,4,.85),rgba(3,6,4,.28)),linear-gradient(0deg,rgba(2,5,3,.82),transparent 55%)}
.after-hero{background:#e4e9df;color:var(--ink)}
/* Legal pages retain full policy text while using the same restrained brand system. */
.legal-hero{position:relative;isolation:isolate;overflow:hidden;background:#101711;padding:195px 0 105px}
.legal-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(3,7,4,.96),rgba(3,7,4,.75)),url('assets/consultation.jpg') center 53%/cover}
.legal-hero .label{color:#c5e7b5}.legal-hero h1{margin:27px 0 18px;font-size:clamp(4.5rem,9vw,8rem);max-width:1000px}
.legal-hero p{font-size:16px;line-height:1.8;color:#d3ddd0;max-width:680px}
.legal-hero-meta{margin-top:32px;color:#b6c8b1;font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.legal-section{background:var(--paper);color:var(--ink);padding:75px 0 140px}
.legal-preview-note{padding:23px 27px;border-left:3px solid var(--green);background:#e9f0e5;color:#334136;font-size:13px;line-height:1.8;margin-bottom:70px}
.legal-preview-note strong{color:#1d301d}.legal-preview-note a{font-weight:700;text-decoration:underline;text-underline-offset:3px}
.legal-grid{display:grid;grid-template-columns:minmax(210px,.32fr) minmax(0,1fr);gap:clamp(50px,8vw,130px);align-items:start}
.legal-index{position:sticky;top:115px;max-height:calc(100svh - 145px);overflow:auto;padding-right:15px}
.legal-index .label{color:#247400;margin-bottom:22px}.legal-index nav{display:grid;gap:1px}
.legal-index nav a{border-top:1px solid #cbd4c7;padding:10px 0;color:#354636;font-size:11px;line-height:1.55}
.legal-index nav a:hover,.legal-related a:hover{color:#247400}
.legal-related{display:grid;gap:12px;margin-top:30px;padding-top:25px;border-top:2px solid var(--green)}
.legal-related a{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.legal-prose{min-width:0;max-width:850px;font-size:15px;line-height:1.85;color:#354236;overflow-wrap:anywhere}
.legal-prose h2,.legal-prose h3{font-family:var(--display);font-weight:600;letter-spacing:.005em;line-height:1.08;text-transform:uppercase;color:#101a12;scroll-margin-top:120px}
.legal-prose h2{font-size:clamp(2.3rem,3.5vw,3.7rem);margin:66px 0 20px;padding-top:20px;border-top:1px solid #cbd4c7}
.legal-prose h3{font-size:clamp(1.5rem,2.2vw,2rem);margin:36px 0 14px}
.legal-prose p{margin:0 0 20px}.legal-prose ul,.legal-prose ol{padding-left:24px;margin:0 0 28px}.legal-prose li{padding:4px 0}
.legal-prose a{color:#236d00;text-decoration:underline;text-underline-offset:3px}
.legal-prose strong{color:#17251a}.legal-prose .info-box{border-left:3px solid var(--green);padding:14px 24px;background:#eef3eb}
.legal-prose .info-box p:last-child{margin-bottom:0}
.legal-prose table{border-collapse:collapse;width:100%;font-size:13px;line-height:1.65;margin:28px 0 38px}
.legal-prose th,.legal-prose td{text-align:left;vertical-align:top;border:1px solid #bdc9ba;padding:12px 15px}
.legal-prose th{background:#e5ecdf;color:#162619}
/* Crime Check frames the existing working tool within the new editorial system. */
.crime-intro{background:var(--paper);color:var(--ink);padding:120px 0 125px}
.crime-intro-grid{display:grid;grid-template-columns:.9fr 1fr;gap:13%;align-items:start}
.crime-intro .label,.crime-context .label{color:#247400}
.crime-intro h2{margin:25px 0 0}.crime-intro p{font-size:16px;line-height:1.85;color:#455347;margin:0 0 25px}
.crime-tool-section{background:#0c110e;color:var(--paper);padding:110px 0 125px}
.crime-tool-head{max-width:780px;margin-bottom:45px}.crime-tool-head .label{color:var(--green)}
.crime-tool-head h2{font:600 clamp(3.5rem,6vw,6.7rem)/.96 var(--display);text-transform:uppercase;margin:22px 0}
.crime-tool-head p{font-size:14px;line-height:1.85;color:#bac9b9;max-width:680px}
.crime-search-panel{border:1px solid #445747;border-top:3px solid var(--green);background:#111a13;padding:35px;box-shadow:0 25px 75px #0005}
.crime-search-panel label{display:block;color:#c7ecb2;font:700 10px var(--sans);letter-spacing:.2em;text-transform:uppercase;margin-bottom:15px}
.crime-form-row{display:flex;gap:12px}.crime-form-row input{flex:1;min-width:0;border:1px solid #536b55;background:#080c09;color:white;border-radius:0;padding:18px 22px;font:600 22px var(--display);text-transform:uppercase;letter-spacing:.08em}
.crime-form-row input::placeholder{color:#778678}.crime-form-row input:focus-visible{outline:2px solid var(--green);outline-offset:2px}
.crime-form-row button{border:0;background:var(--green);padding:17px 27px;color:#0b180c;font:700 11px var(--sans);text-transform:uppercase;letter-spacing:.12em;cursor:pointer;min-width:180px}
.crime-form-row button:hover{background:#53ca12}.crime-form-row button:disabled{opacity:.5;cursor:wait}.crime-search-panel p{color:#adbbaa;font-size:11px;line-height:1.7;margin:16px 0 0}.crime-status{min-height:24px}.crime-status.is-error{color:#ffd4c9}
.crime-results{margin-top:50px;scroll-margin-top:120px}.crime-results[hidden],.crime-map-wrap[hidden]{display:none!important}
.crime-result-head{display:flex;justify-content:space-between;align-items:end;gap:35px;border-bottom:1px solid #455548;padding-bottom:32px}
.crime-result-head .label{color:var(--green)}.crime-result-head h3{font:600 clamp(2.5rem,4.5vw,4.7rem)/1 var(--display);text-transform:uppercase;margin:20px 0 8px}
.crime-result-head p{font-size:12px;color:#b3c4b2}.crime-total{text-align:right;max-width:240px}.crime-total strong{display:block;font:600 5rem/.9 var(--display);color:var(--green)}.crime-total span{display:block;font:700 10px/1.6 var(--sans);text-transform:uppercase;letter-spacing:.1em;color:#bdcdbb;margin-top:10px}
.crime-map-wrap{margin-top:35px;border:1px solid #455548;background:#111b14}.crime-map-wrap>p{font-size:11px;color:#b7c7b4;padding:16px 20px;margin:0;line-height:1.6}#crime-map{height:460px;background:#111b14}
#crime-map .leaflet-tile-pane{filter:grayscale(1) invert(.9) sepia(.3) hue-rotate(65deg) brightness(.7)}#crime-map .leaflet-control-attribution{background:#101a13df;color:white}#crime-map .leaflet-control-attribution a{color:#8cdb5e}
.crime-map-popup .leaflet-popup-content-wrapper{background:#101a13;color:#f4f8f1;border:1px solid #64824f;border-radius:3px;box-shadow:0 10px 30px #0009}.crime-map-popup .leaflet-popup-tip{background:#101a13}.crime-map-popup .leaflet-popup-content{margin:15px 17px;min-width:180px;max-width:260px}.crime-popup-content{font:12px/1.5 var(--sans)}.crime-popup-content>strong{display:block;font:700 14px/1.3 var(--sans);color:#a9e680}.crime-popup-location{display:block;color:#c4d2bf;margin:5px 0 10px}.crime-popup-content p{margin:0 0 12px;font-weight:700}.crime-popup-content ul{list-style:none;padding:0;margin:0 0 12px;max-height:170px;overflow:auto}.crime-popup-content li{display:flex;justify-content:space-between;gap:14px;border-top:1px solid #3d503d;padding:5px 0}.crime-popup-content li b{color:#a9e680}.crime-popup-content small{display:block;color:#aab9a7;font-size:10px;line-height:1.5}.crime-map-popup .leaflet-popup-close-button{color:#c4d2bf!important}
.crime-categories{margin-top:65px}.crime-categories h3{font:600 38px/.95 var(--display);text-transform:uppercase;margin:0 0 25px}.crime-category-list{display:grid;grid-template-columns:1fr 1fr;gap:0 34px}.crime-category-row{display:flex;justify-content:space-between;gap:15px;border-top:1px solid #415342;padding:14px 0;font-size:12px;color:#d1dbcf}.crime-category-row strong{color:#9de278}
.crime-frame-fallback{font-size:12px;color:#b9c9b7;margin:22px 0 0}.crime-frame-fallback a{color:#c9efa9;text-decoration:underline;text-underline-offset:3px}
.crime-context{background:#e7ede3;color:var(--ink);padding:120px 0 145px}
.crime-context h2{margin:24px 0 65px}.crime-context-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.crime-context article{border-top:1px solid #adbba8;padding:25px 15px 0 0}.crime-context article span{color:#247400;font:700 10px var(--sans);letter-spacing:.17em;text-transform:uppercase}
.crime-context h3{font:600 30px/.98 var(--display);text-transform:uppercase;margin:30px 0 20px}
.crime-context article p{color:#4b594d;font-size:13px;line-height:1.8}.crime-sources{margin:75px 0 0;padding-top:22px;border-top:1px solid #adbba8;font-size:11px;line-height:1.8;color:#4b594d}
.crime-sources a{color:#256c09;text-decoration:underline;text-underline-offset:3px}
/* Interior headlines can wrap to three or more lines. Let the hero grow with
   its content and reserve a clear lower band for the edge labels. */
.hero.interior{height:auto;min-height:max(75svh,850px);max-height:none;padding:165px 0 135px}
.hero.interior .hero-content{padding-top:0}
@media(max-width:1050px){.main-nav{gap:17px}.main-nav>a,.nav-parent>a{font-size:9px}.service-row{grid-template-columns:50px 1fr 220px 30px}.footer-main{grid-template-columns:1fr 1fr}}
@media(min-width:761px) and (max-width:1120px){.site-header{padding-inline:4.5%}.menu-button{display:block}.main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#101b13;padding:18px 4.5% 26px;border-bottom:1px solid #586b59;flex-direction:column;align-items:stretch;gap:0;max-height:calc(100svh - 80px);overflow:auto}.main-nav.open{display:flex}.main-nav>a,.nav-parent>a{display:block;font-size:12px;padding:14px 0}.main-nav .nav-action{padding:15px;justify-content:space-between}.subnav{position:static;display:block!important;width:100%;background:transparent;border:0;box-shadow:none;padding:0 0 12px 12px}.subnav a{font-size:11px;padding:9px 0}}
@media(max-width:760px){.shell{width:calc(100% - 42px)}.site-header{padding:20px 21px}.site-header.scrolled{padding:15px 21px}.brand img{width:150px}.menu-button{display:block}.main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#101b13;padding:18px 21px 26px;border-bottom:1px solid #586b59;flex-direction:column;align-items:stretch;gap:0;max-height:calc(100svh - 70px);overflow:auto}.main-nav.open{display:flex}.main-nav>a,.nav-parent>a{display:block;font-size:12px;padding:14px 0}.main-nav .nav-action{padding:15px;justify-content:space-between}.subnav{position:static;display:block!important;width:100%;background:transparent;border:0;box-shadow:none;padding:0 0 12px 12px}.subnav a{font-size:11px;padding:9px 0}.hero{min-height:700px;max-height:880px;height:100svh;align-items:end}.hero.interior{min-height:600px;height:82svh}.hero-media{object-position:62% center}.hero:after{background:linear-gradient(0deg,rgba(4,10,6,.96),rgba(4,10,6,.45) 65%,rgba(4,10,6,.3))}.hero-content{padding:0 0 125px}.hero h1{font-size:clamp(3.7rem,12vw,6rem)}.hero.interior h1{font-size:clamp(3.7rem,11vw,6rem)}.hero .lead{font-size:14px;line-height:1.8}.hero-actions{gap:20px}.vertical-word,.hero-side{display:none}.hero-edge{bottom:30px;left:21px;font-size:8px}.after-hero{display:block;padding:16px 21px;font-size:8px}.after-hero .divider{display:none}.intro,.services-home,.method,.coverage,.cta-section,.page-content,.service-landing{padding:85px 0}.intro-grid,.method-top,.coverage-grid,.cta-grid,.page-grid,.faq-grid{grid-template-columns:1fr;gap:30px}.section-title,.essay-title{font-size:clamp(3rem,10vw,4.8rem)}.intro-text p{margin-top:0;font-size:15px}.section-head{display:block;margin-bottom:40px}.section-head p{margin-top:25px}.service-row{grid-template-columns:38px 1fr 24px;min-height:100px;gap:10px;padding:16px 0}.service-row h3{font-size:31px}.service-row p{display:none}.feature-band{min-height:630px;padding:85px 0}.feature-band .section-title{font-size:clamp(3.4rem,10vw,5.6rem)}.method-steps{grid-template-columns:1fr;gap:33px;margin-top:55px}.method-step h3{margin-top:25px}.places{grid-template-columns:1fr 1fr}.places span{font-size:20px}.contact-panel{padding:28px}.content-cards{grid-template-columns:1fr;gap:24px}.related-grid{grid-template-columns:1fr}.related a{min-height:150px}.services-catalogue{grid-template-columns:1fr}.catalogue-card{min-height:380px}.faq{padding:85px 0}.footer-main{grid-template-columns:1fr 1fr;gap:35px}.footer-main>div:first-child{grid-column:1/-1}.footer-bottom{margin-top:45px}}
@media(max-width:480px){.hero h1,.hero.interior h1{font-size:clamp(3.3rem,13vw,4.4rem)}.hero-actions{display:grid;justify-items:start}.footer-main{grid-template-columns:1fr 1fr}.footer-col a{font-size:11px}.contact-panel a:not(.arrow-link){font-size:23px}.page-content .prose{font-size:14px}.catalogue-card{padding:25px}}
@media(max-width:760px){.hero.interior{height:auto;min-height:max(82svh,720px);max-height:none;padding:145px 0 105px;align-items:center}.hero.interior .hero-content{padding:0}}
@media(max-width:760px){.legal-hero{padding:145px 0 75px}.legal-hero h1{font-size:clamp(3.5rem,13vw,5.5rem)}.legal-section{padding:45px 0 90px}.legal-preview-note{margin-bottom:40px;padding:18px}.legal-grid{grid-template-columns:1fr;gap:40px}.legal-index{position:static;max-height:240px;padding:18px;border:1px solid #cbd4c7}.legal-index nav{grid-template-columns:1fr 1fr;column-gap:18px}.legal-related{margin-top:15px}.legal-prose{font-size:14px}.legal-prose table{display:block;overflow-x:auto}}
@media(max-width:760px){.crime-intro,.crime-tool-section,.crime-context{padding:80px 0}.crime-intro-grid,.crime-context-grid,.crime-category-list{grid-template-columns:1fr;gap:25px}.crime-intro p{font-size:14px}.crime-context h2{margin-bottom:40px}.crime-context article{padding-top:20px}.crime-sources{margin-top:40px}.crime-search-panel{padding:22px}.crime-form-row{display:grid}.crime-form-row button{width:100%}.crime-result-head{display:block}.crime-total{text-align:left;margin-top:25px}.crime-total strong{font-size:4rem}#crime-map{height:380px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}[data-reveal]{opacity:1;transform:none}.hero-media{transform:none}}
/* Private enquiry: one restrained panel, minimal data collection, clear alternatives. */
.enquiry-section{background:#0d140f;color:var(--paper);padding:125px 0 145px;scroll-margin-top:100px}
.enquiry-grid{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1fr);gap:9%;align-items:start}
.enquiry-intro{position:sticky;top:135px}.enquiry-intro .label,.enquiry-card .label{color:#a8e18a}.enquiry-intro .section-title{margin:24px 0 28px}
.enquiry-intro>p{max-width:510px;color:#c2d0c0;font-size:15px;line-height:1.85}
.enquiry-assurance{display:grid;gap:17px;margin-top:55px;padding-top:25px;border-top:1px solid #536856;color:#bcd2b7;font:700 10px var(--sans);letter-spacing:.16em;text-transform:uppercase}
.enquiry-card{padding:46px;border:1px solid #526853;border-top:3px solid var(--green);background:#151d17;box-shadow:0 30px 70px #0004}
.enquiry-card-heading{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:28px}.enquiry-card-heading p{margin:0;color:#b8c6b5;font-size:11px}
.enquiry-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 18px}.enquiry-field{min-width:0}.enquiry-field-wide{grid-column:1/-1}
.enquiry-field label{display:block;margin-bottom:11px;color:#e4eddf;font:700 10px var(--sans);letter-spacing:.13em;text-transform:uppercase}.enquiry-field label span{font-weight:500;color:#aebcaa;text-transform:none;letter-spacing:0}
.enquiry-field input,.enquiry-field select,.enquiry-field textarea{display:block;width:100%;border:1px solid #617360;border-radius:0;background:#0c130e;color:#f4f7f2;padding:15px 16px;font:500 14px/1.5 var(--sans)}
.enquiry-field select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#9bd281 50%),linear-gradient(135deg,#9bd281 50%,transparent 50%);background-position:calc(100% - 23px) 50%,calc(100% - 17px) 50%;background-size:6px 6px;background-repeat:no-repeat;padding-right:40px}
.enquiry-field input::placeholder,.enquiry-field textarea::placeholder{color:#a2afa0}.enquiry-field textarea{resize:vertical;min-height:145px}
.enquiry-field :is(input,select,textarea):focus-visible{outline:2px solid var(--green);outline-offset:2px}.enquiry-field small{display:block;margin-top:10px;color:#b3c1af;font-size:11px;line-height:1.5}
.enquiry-privacy{margin:27px 0 22px;color:#bfcdbb;font-size:11px;line-height:1.7}.enquiry-privacy a,.enquiry-fallback a{color:#b6ec9a;text-decoration:underline;text-underline-offset:3px}
.enquiry-submit{width:100%;border:0;cursor:pointer}.enquiry-fallback{margin:16px 0 0;font-size:11px;color:#bac8b7;line-height:1.6}.enquiry-trap{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.enquiry-preview-note{border-left:2px solid var(--green);padding:13px 16px;margin:0 0 28px;background:#203022;color:#d5e3cf;font-size:12px;line-height:1.7}.enquiry-preview-note strong{color:#b9ed9b}.enquiry-submit:disabled{opacity:.65;cursor:not-allowed;transform:none;background:#79966d}
.enquiry-response{min-height:100svh;display:flex;align-items:center;background:#0d140f}.enquiry-response main{padding-block:80px}.enquiry-response img{width:210px;height:auto;margin-bottom:80px}.enquiry-response .label{color:#a8e18a}.enquiry-response h1{margin:25px 0;max-width:900px}.enquiry-response p{max-width:680px;color:#c5d2c3;line-height:1.8}.enquiry-response .hero-actions{margin-top:35px}
#contact-options{scroll-margin-top:90px}
@media(max-width:960px){.enquiry-grid{grid-template-columns:1fr;gap:48px}.enquiry-intro{position:static}.enquiry-assurance{display:flex;flex-wrap:wrap;gap:14px 25px;margin-top:32px}}
@media(max-width:760px){.enquiry-section{padding:85px 0}.enquiry-card{padding:26px}.enquiry-fields{grid-template-columns:1fr;gap:20px}.enquiry-card-heading{display:block}.enquiry-card-heading p{margin-top:10px}}
.advice-section{background:#111812;color:var(--paper);padding:120px 0}.advice-section .label{color:var(--green)}.advice-section .section-title{margin:20px 0 55px}.advice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.advice-card{border:1px solid #536b56;padding:30px;min-height:330px;display:flex;flex-direction:column;align-items:flex-start;transition:background .2s,border-color .2s}.advice-card:hover,.advice-card:focus-visible{background:#1c2a20;border-color:var(--green)}.advice-card h2{font:600 clamp(1.8rem,2.5vw,2.8rem)/1.04 var(--display);text-transform:uppercase;letter-spacing:.01em;margin:40px 0 20px}.advice-card p{color:#cad7c8;font-size:14px;line-height:1.7;margin:0}.advice-card .arr{color:var(--green);font-size:24px;margin-top:auto;padding-top:20px}.page-content .prose a{color:#246f00;text-decoration:underline;text-underline-offset:4px}.source-note{border-top:1px solid #aab8a6;margin:65px 0 35px;padding-top:10px}.source-note li{overflow-wrap:anywhere}
@media(min-width:1121px) and (max-width:1380px){.menu-button{display:block}.main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#101b13;padding:18px 4.5% 26px;border-bottom:1px solid #586b59;flex-direction:column;align-items:stretch;gap:0;max-height:calc(100svh - 80px);overflow:auto}.main-nav.open{display:flex}.main-nav>a,.nav-parent>a{display:block;font-size:12px;padding:14px 0}.main-nav .nav-action{padding:15px;justify-content:space-between}.subnav{position:static;display:block!important;width:100%;background:transparent;border:0;box-shadow:none;padding:0 0 12px 12px}.subnav a{font-size:11px;padding:9px 0}}
@media(max-width:900px){.advice-section{padding:85px 0}.advice-grid{grid-template-columns:1fr}.advice-card{min-height:220px}.advice-card h2{margin:25px 0 14px}}
.home-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.home-service-card{position:relative;isolation:isolate;overflow:hidden;min-height:440px;padding:28px;display:flex;flex-direction:column;justify-content:space-between;color:#fff;border:1px solid #46574a;background:#172019}.home-service-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .6s ease}.home-service-card:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(4,10,6,.94),rgba(4,10,6,.3) 66%,rgba(4,10,6,.4))}.home-service-card:hover img,.home-service-card:focus-visible img{transform:scale(1.045)}.home-service-card:focus-visible{outline:2px solid var(--green);outline-offset:3px}.home-service-number{font:700 10px var(--sans);letter-spacing:.18em;text-transform:uppercase;color:#c9e8bc}.home-service-copy{display:grid;gap:12px}.home-service-copy strong{font:600 clamp(1.9rem,2.3vw,2.8rem)/.98 var(--display);letter-spacing:.01em;text-transform:uppercase}.home-service-copy>span:nth-child(2){font-size:13px;line-height:1.65;color:#d4dfd1}.home-service-link{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #a3b39e;padding-top:14px;margin-top:8px;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.home-service-link span{font-size:20px;color:var(--green)}
@media(max-width:1050px){.home-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.home-service-grid{grid-template-columns:1fr}.home-service-card{min-height:410px;padding:25px}.home-service-copy strong{font-size:2.5rem}}
.home-service-copy h3{font:600 clamp(1.9rem,2.3vw,2.8rem)/.98 var(--display);letter-spacing:.01em;text-transform:uppercase;margin:0}
@media(max-width:650px){.home-service-copy h3{font-size:2.5rem}}
@media(max-width:360px){.hero.interior h1{font-size:2.75rem}}
.crime-sources a{display:inline-block;min-height:26px;padding:5px 3px;vertical-align:middle}
.not-found{position:relative;isolation:isolate;min-height:860px;min-height:100svh;display:flex;align-items:center;overflow:hidden;background:#0d150f;color:#f4f7f1;padding:190px 0 120px}.not-found-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.not-found:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(3,8,5,.96),rgba(3,8,5,.8) 49%,rgba(3,8,5,.3)),linear-gradient(0deg,rgba(3,8,5,.65),transparent 45%)}.not-found-content{position:relative}.not-found .label{color:#c0eaa8}.not-found-code{font:700 clamp(8rem,22vw,19rem)/.75 var(--display);letter-spacing:-.045em;color:rgba(83,192,28,.18);margin:35px 0 -20px}.not-found h1{font:600 clamp(3.8rem,7vw,8rem)/.94 var(--display);letter-spacing:-.025em;text-transform:uppercase;max-width:950px;margin:0}.not-found h1 em{color:var(--green);font-style:normal}.not-found p{max-width:600px;margin:34px 0 0;font-size:clamp(15px,1.25vw,18px);line-height:1.85;color:#d0dece}.not-found-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin-top:42px}.not-found .bare-link{color:#f1f7ee}.not-found .bare-link:hover{color:var(--green)}
@media(max-width:760px){.not-found{min-height:760px;padding:155px 0 100px}.not-found-code{font-size:clamp(8rem,33vw,13rem);margin:30px 0 5px}.not-found h1{font-size:clamp(3.3rem,13vw,5.5rem)}.not-found p{font-size:14px}.not-found-actions{align-items:flex-start;flex-direction:column;gap:24px}}
/* Keep browser-native form validation and keyboard focus clear of the fixed header. */
html{scroll-padding-top:130px}
.enquiry-field :is(input,select,textarea){scroll-margin-top:130px}
.crime-search-panel .crime-status{font-size:13px;line-height:1.6;font-weight:600}
.crime-location-list-panel{margin:24px 0 36px;padding:20px 24px;border:1px solid #526853;background:#101912;color:#dce8d8}
.crime-location-list-panel summary{cursor:pointer;color:#eaf5e4;font:700 13px/1.5 var(--sans);letter-spacing:.07em;text-transform:uppercase;min-height:44px;display:flex;align-items:center}
.crime-location-list-panel summary:focus-visible,.crime-location-list-panel button:focus-visible{outline:2px solid #a9e888;outline-offset:3px}
.crime-location-list-panel p{font-size:13px;line-height:1.7;color:#c5d4c0}
.crime-location-list-panel ol{margin:18px 0;padding-left:25px;display:grid;gap:14px}
.crime-location-list-panel li{padding-left:5px;font-size:13px;line-height:1.6}
.crime-location-list-panel li strong,.crime-location-list-panel li span{display:block}
.crime-location-list-panel li strong{color:#f1f7ed}
.crime-location-list-panel li span{color:#bdcfb7}
.crime-location-list-panel button{border:1px solid #7dbf52;background:transparent;color:#e4f4db;min-height:44px;padding:9px 16px;cursor:pointer;font:700 12px var(--sans)}
.crime-location-list-panel button[hidden]{display:none}
#services-catalogue{scroll-margin-top:110px}
/* Consent controls are independent of the site's optional analytics. */
.cookie-panel[hidden]{display:none!important}
.cookie-panel{position:fixed;z-index:10000;inset:auto 16px 16px;display:flex;align-items:center;justify-content:space-between;gap:28px;max-width:1100px;margin:auto;padding:22px 26px;background:#101813;color:#f1f4f0;border:1px solid #547a59;box-shadow:0 18px 55px #0008;font-family:Manrope,Arial,sans-serif}
.cookie-panel-copy{max-width:690px}
.cookie-panel strong{display:block;color:#b9ed9a;font-size:12px;letter-spacing:.18em}
.cookie-panel p{font-size:14px;line-height:1.6;margin:9px 0 0}
.cookie-panel a{color:#b9ed9a;text-decoration:underline}
.cookie-panel-actions{display:flex;gap:10px;flex-shrink:0}
.cookie-panel-actions button{min-height:48px;min-width:145px;padding:10px 15px;border:1px solid #b9ed9a;background:transparent;color:#f1f4f0;font:700 13px Manrope,Arial,sans-serif;cursor:pointer}
.cookie-panel-actions button:last-child{background:#37a900;border-color:#37a900;color:#090d0a}
.cookie-panel-actions button:hover,.cookie-panel-actions button:focus-visible{outline:2px solid #fff;outline-offset:2px}
.cookie-settings-link{display:block;border:0;background:none;color:inherit;padding:0;margin:0;text-decoration:underline;text-align:left;font:inherit;cursor:pointer}
.cookie-settings-link:focus-visible{outline:2px solid #37a900;outline-offset:3px}
@media(max-width:720px){.cookie-panel{inset:auto 10px 10px;display:block;padding:17px}.cookie-panel-actions{margin-top:16px;display:grid;grid-template-columns:1fr 1fr}.cookie-panel-actions button{min-width:0;padding:10px 7px;font-size:12px}}
@media(max-width:390px){.cookie-panel-actions{grid-template-columns:1fr}}
/* Use the accessible deep brand green for large headlines on pale sections. */
.intro .section-title em,.method .section-title em{color:#247400}

/* Vector link arrow: consistent text-like rendering on iOS and desktop. */
.ui-arrow{display:inline-block;flex:none;width:1em;height:1em;vertical-align:-.12em;font-size:1.35em;background-color:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 19 19 5M8 5h11v11' fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='square'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 19 19 5M8 5h11v11' fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='square'/%3E%3C/svg%3E") center/contain no-repeat}
