:root{--ink:#0a1f2d;--ink2:#12384a;--paper:#f4f0e7;--paper2:#e7e0d2;--brass:#b8914b;--rust:#9f4e34;--fog:#cad5d5;--white:#fff;--text:#24333a;--serif:Georgia,'Times New Roman',serif;--sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--text);font-family:var(--sans);line-height:1.65}a{color:inherit}img{max-width:100%}.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;z-index:99;background:#fff;padding:.7rem}
.topline{height:5px;background:linear-gradient(90deg,var(--rust) 0 22%,var(--brass) 22% 42%,var(--ink2) 42%)}header{background:rgba(244,240,231,.97);position:sticky;top:0;z-index:20;border-bottom:1px solid #cfc7b7}.nav{max-width:1180px;margin:auto;min-height:82px;padding:0 28px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{text-decoration:none;display:flex;align-items:center}.brand-name{font:700 17px/1.05 var(--serif);letter-spacing:.055em;text-transform:uppercase}.brand-name small{display:block;font:600 9px/1.5 var(--sans);letter-spacing:.22em;color:#6b706d;margin-top:4px}.links{display:flex;align-items:center;gap:28px}.links a{text-decoration:none;text-transform:uppercase;font-size:12px;font-weight:700;letter-spacing:.13em}.links a:hover,.links a[aria-current=page]{color:var(--rust)}.button,.links .button{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:var(--rust);color:white!important;border:0;padding:14px 20px;text-decoration:none;text-transform:uppercase;font-size:11px;font-weight:800;letter-spacing:.14em;cursor:pointer;transition:.2s}.button:hover{background:#7f3e2a;transform:translateY(-1px)}.button.secondary{background:transparent;border:1px solid var(--brass);color:var(--ink)!important}.menu{display:none;background:none;border:0;font-size:24px;color:var(--ink)}
.hero{min-height:690px;background:linear-gradient(90deg,rgba(6,23,34,.94) 0%,rgba(6,23,34,.72) 38%,rgba(6,23,34,.12) 70%),url("lighthouse-newfoundland.webp") center center/cover no-repeat;color:white;position:relative;overflow:hidden;display:grid;align-items:center}.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(115deg,transparent 48%,rgba(255,255,255,.035) 48% 49%,transparent 49%)}.hero-inner{max-width:1180px;margin:auto;width:100%;padding:88px 28px;position:relative;z-index:2}.kicker{text-transform:uppercase;letter-spacing:.25em;font-size:11px;font-weight:800;color:#d0b77f;display:flex;align-items:center;gap:12px}.kicker:before{content:'';width:35px;height:1px;background:var(--brass)}h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.08;color:var(--ink)}h1{font-size:clamp(48px,7vw,88px);color:white;max-width:720px;margin:22px 0 24px;letter-spacing:-.035em}h2{font-size:clamp(34px,4vw,57px);margin:.25em 0}.hero p{font:20px/1.65 var(--serif);color:#dce3e4;max-width:590px}.hero-actions{display:flex;gap:14px;margin-top:35px;flex-wrap:wrap}.hero .secondary{color:white!important}.trustbar{background:var(--ink2);color:white}.trustgrid{max-width:1180px;margin:auto;padding:23px 28px;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.trustitem{display:flex;gap:13px;align-items:center;border-right:1px solid rgba(255,255,255,.18);font-size:12px;letter-spacing:.08em;text-transform:uppercase}.trustitem:last-child{border:0}.roman{font:italic 25px var(--serif);color:var(--brass)}
.section{padding:105px 28px}.container{max-width:1180px;margin:auto}.intro{display:grid;grid-template-columns:.8fr 1.4fr;gap:80px;align-items:start}.intro .lead{font:clamp(25px,3vw,38px)/1.4 var(--serif);color:var(--ink);margin-top:0}.eyebrow{text-transform:uppercase;color:var(--rust);font-size:11px;font-weight:800;letter-spacing:.2em}.rule{height:1px;background:#cfc7b7;margin:35px 0}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#c8c0b2;border:1px solid #c8c0b2}.principle{background:var(--paper);padding:36px}.principle span{font:40px var(--serif);color:var(--brass)}.principle h3{font-size:25px;margin:14px 0 9px}.dark{background:var(--ink);color:#dce3e4}.dark h2,.dark h3{color:white}.services-preview{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:#34505e;margin-top:45px}.service-preview{background:var(--ink);padding:34px;text-decoration:none;transition:.2s}.service-preview:hover{background:#102d3d}.service-preview .num{color:var(--brass);font-size:11px;letter-spacing:.18em}.service-preview h3{font-size:28px;margin:12px 0}.service-preview p{margin:0;color:#aebec2}.arrow{display:inline-block;margin-top:18px;color:#d3b77a}.local-band{background:var(--paper2);position:relative;overflow:hidden}.local-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.mapmark{height:380px;border:1px solid #bdb4a3;position:relative;background:linear-gradient(145deg,#d5d1c6,#ebe6db);overflow:hidden}.mapmark svg{width:100%;height:100%}.quote{font:31px/1.35 var(--serif);color:var(--ink)}
.pagehero{background:var(--ink);color:white;padding:100px 28px 90px;position:relative;overflow:hidden}.pagehero:after{content:'§';position:absolute;right:8%;top:-65px;font:260px var(--serif);color:rgba(184,145,75,.08)}.pagehero .container{position:relative;z-index:1}.pagehero h1{font-size:clamp(48px,6vw,76px);margin-bottom:20px}.pagehero p{font:21px/1.6 var(--serif);max-width:680px;color:#cad5d5}.service-list{display:grid;gap:0;border-top:1px solid #bbb19f}.service-row{display:grid;grid-template-columns:70px 1fr 1fr;gap:38px;padding:55px 0;border-bottom:1px solid #bbb19f}.service-row .index{font:30px var(--serif);color:var(--brass)}.service-row h2{font-size:34px;margin:0}.service-row ul{padding-left:19px}.service-row li{margin:6px 0}.retainer{background:#e1d8c7;border-left:4px solid var(--brass);padding:22px 25px;margin-top:24px}.notice{background:var(--ink);color:white;padding:35px;margin-top:70px;display:grid;grid-template-columns:auto 1fr;gap:24px}.notice strong{font:33px var(--serif);color:var(--brass)}.about-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:80px;align-items:start}.factbox{background:var(--ink);color:white;padding:40px}.factbox h3{color:white;font-size:29px}.fact{padding:18px 0;border-top:1px solid rgba(255,255,255,.15)}.fact b{display:block;color:#d2b676;text-transform:uppercase;font-size:10px;letter-spacing:.17em;margin-bottom:5px}.method{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#c8c0b2;margin-top:45px}.step{background:var(--paper);padding:30px}.step i{font:34px var(--serif);color:var(--brass)}
.contact-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:65px}.contact-card{background:var(--ink);color:white;padding:40px;align-self:start}.contact-card h2{color:white;font-size:37px}.contact-card a{color:#dbc18a}.form{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}label{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--ink)}input,select,textarea{width:100%;border:1px solid #bfb6a5;background:#fbf9f3;padding:14px 15px;font:16px var(--sans);color:var(--text);border-radius:0}textarea{min-height:150px;resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid var(--brass);outline-offset:1px}.check{display:flex;gap:10px;align-items:flex-start;font-size:13px}.check input{width:auto;margin-top:5px}.form-note{font-size:12px;color:#6d726f}.trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.form-error{color:#8a2f22;background:#f5e3dc;border-left:3px solid #9f4e34;padding:12px 14px}.button:disabled{opacity:.65;cursor:wait}.success{display:none;border:1px solid #a99772;background:#ece5d7;padding:25px}.success.show{display:block}
.privacy-hero h1{max-width:none}.policy{max-width:850px}.policy-date{padding-bottom:24px;border-bottom:1px solid #c8c0b2}.policy h2{font-size:clamp(27px,3vw,36px);margin:1.7em 0 .55em}.policy p,.policy li{font-size:16px}.policy a{color:#7f3e2a;text-decoration-thickness:1px;text-underline-offset:3px}.policy ul{padding-left:1.3rem}.policy li{margin:.45rem 0}
.investigator-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:75px;align-items:start}.investigator-grid .lead{font:clamp(24px,2.7vw,35px)/1.4 var(--serif);color:var(--ink)}.credential-panel{background:var(--ink);color:#dce3e4;padding:40px;position:sticky;top:115px}.credential-panel h2{color:white;font-size:36px;margin-bottom:28px}.credential-panel a{color:#dbc18a}.credential{padding:22px 0;border-top:1px solid rgba(255,255,255,.17)}.credential span{display:block;color:#d2b676;text-transform:uppercase;font-size:11px;font-weight:800;letter-spacing:.14em;margin-bottom:6px}.credential strong{font:24px var(--serif);color:white;letter-spacing:.03em}
footer{background:#061722;color:#aab8bb;padding:60px 28px 25px}.footergrid{max-width:1180px;margin:auto;display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:50px}.footergrid h3{color:white;font-size:23px}.footergrid a{display:block;text-decoration:none;margin:7px 0}.footerbottom{max-width:1180px;margin:45px auto 0;padding-top:20px;border-top:1px solid #253844;display:flex;justify-content:space-between;font-size:11px;letter-spacing:.06em}.mini{font-size:13px}.nlflag{display:flex;gap:7px;align-items:center;text-transform:uppercase;font-size:10px;letter-spacing:.15em;color:#d5c49d}
@media(max-width:800px){.menu{display:block}.links{display:none;position:absolute;top:82px;left:0;right:0;background:var(--paper);padding:24px 28px;flex-direction:column;align-items:flex-start;border-bottom:1px solid #ccc}.links.open{display:flex}.hero{min-height:620px}.trustgrid,.principles,.method{grid-template-columns:1fr}.trustitem{border-right:0;border-bottom:1px solid rgba(255,255,255,.15);padding:7px 0}.intro,.local-grid,.about-grid,.contact-grid,.investigator-grid{grid-template-columns:1fr;gap:40px}.credential-panel{position:static}.services-preview{grid-template-columns:1fr}.service-row{grid-template-columns:50px 1fr}.service-row>div:last-child{grid-column:2}.footergrid{grid-template-columns:1fr}.footerbottom{flex-direction:column;gap:12px}.form{grid-template-columns:1fr}.field.full{grid-column:auto}.section{padding:75px 22px}.nav{padding:0 20px}.brand-name{font-size:14px}.brand-name small{font-size:8px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
