
:root{--navy:#101d32;--navy2:#182b46;--gold:#c8a86a;--gold2:#e3cfaa;--ink:#172234;--muted:#697487;--paper:#fbfaf7;--white:#fff;--line:#e5e2dc;--tint:#f1eee7;--shadow:0 18px 48px rgba(16,29,50,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.topline{height:4px;background:linear-gradient(90deg,var(--gold),#f0e0bc,var(--gold))}.wrap{width:min(1160px,calc(100% - 44px));margin:auto}.site-header{position:sticky;top:0;z-index:20;background:rgba(251,250,247,.94);backdrop-filter:blur(16px);border-bottom:1px solid rgba(229,226,220,.85)}.nav{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;min-width:210px}.brand-mark{width:42px;height:42px;border:1px solid var(--gold);color:var(--gold);display:grid;place-items:center;font-family:Georgia,serif;font-size:23px;font-weight:bold;position:relative}.brand-mark:after{content:"";position:absolute;inset:4px;border:1px solid rgba(200,168,106,.45)}.brand-name{font-family:Georgia,"Times New Roman",serif;font-size:24px;letter-spacing:2.3px;font-weight:700;color:var(--navy);line-height:1}.brand-sub{display:block;font-size:9px;letter-spacing:2.1px;color:var(--muted);margin-top:5px;text-transform:uppercase}.nav-links{display:flex;align-items:center;gap:21px;font-size:12px;font-weight:650;color:#354054}.nav-links a{padding:9px 0;white-space:nowrap}.nav-links a:hover,.nav-links a.active{color:#9b793c}.nav-cta{padding:11px 15px!important;background:var(--navy);color:#fff!important;border-radius:2px}.menu-toggle{display:none;background:none;border:1px solid var(--line);padding:8px 11px}.hero{background:var(--navy);color:white;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(200,168,106,.22);border-radius:50%;right:-70px;top:-210px;box-shadow:0 0 0 50px rgba(200,168,106,.025),0 0 0 100px rgba(200,168,106,.025)}.hero:after{content:"";position:absolute;width:280px;height:280px;border:1px solid rgba(200,168,106,.18);transform:rotate(45deg);right:8%;bottom:-190px}.hero-inner{padding:100px 0 88px;position:relative;z-index:1;max-width:850px}.eyebrow{font-size:10px;letter-spacing:2.3px;font-weight:800;color:#a98549;text-transform:uppercase;margin:0 0 16px}.hero .eyebrow{color:var(--gold2)}h1,h2,h3{font-family:Georgia,"Times New Roman",serif;font-weight:500;line-height:1.13;margin:0 0 18px}h1{font-size:clamp(43px,6vw,76px);letter-spacing:-1.8px;max-width:850px}h2{font-size:clamp(30px,4vw,46px);letter-spacing:-.7px;color:var(--navy)}h3{font-size:24px;color:var(--navy)}p{margin:0 0 17px}.hero .lead{font-size:18px;color:#d8dfeb;max-width:680px;line-height:1.8}.hero-actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:center;gap:14px;background:var(--gold);color:#172234;border:1px solid var(--gold);padding:14px 20px;font-size:12px;font-weight:800;letter-spacing:.4px;cursor:pointer;border-radius:2px;transition:.2s}.button:hover{transform:translateY(-2px);background:#d9bb83}.button-outline{border-color:rgba(255,255,255,.35);background:transparent;color:white}.button-light{background:#f7f2e8;border-color:#f7f2e8}.hero-meta{display:flex;gap:26px;flex-wrap:wrap;margin-top:45px;color:#c3ccda;font-size:11px;letter-spacing:.6px}.hero-meta span:before{content:"✦";color:var(--gold);margin-right:8px}.page-hero .hero-inner{padding:75px 0 66px}.page-hero h1{font-size:clamp(40px,5vw,62px)}.page-hero .lead{max-width:800px}.section{padding:76px 0}.section-head{max-width:720px;margin-bottom:34px}.section-head>p:not(.eyebrow){color:var(--muted);font-size:16px}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#2d3d54;border-top:1px solid #2d3d54;border-bottom:1px solid #2d3d54}.stat{background:#14243b;color:white;padding:27px clamp(20px,4vw,55px)}.stat span{color:var(--gold);font-size:11px;letter-spacing:2px}.stat strong{display:block;font-family:Georgia,serif;font-size:22px;font-weight:500;margin:10px 0}.stat p{font-size:13px;color:#bfc9d8;margin:0}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.cards.three{grid-template-columns:repeat(3,minmax(0,1fr))}.service-card,.mini-card{display:block;background:#fff;border:1px solid var(--line);padding:28px;min-height:220px;transition:transform .2s,box-shadow .2s,border-color .2s}.service-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:#cbb27e}.card-no{font-size:10px;letter-spacing:1.8px;color:#a98549;font-weight:800}.service-card h3{margin-top:18px}.service-card p,.mini-card p{font-size:14px;color:var(--muted);line-height:1.8}.arrow,.text-link{font-size:12px;color:#9b793c;font-weight:800;letter-spacing:.3px}.dark-band{padding:66px max(22px,calc((100vw - 1160px)/2));background:var(--navy2);color:white}.dark-band h2{color:white;max-width:720px}.dark-band>p:not(.eyebrow){color:#cad3e0;max-width:690px}.dark-band .button{margin-top:12px}.split{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start}.check-list p{border-bottom:1px solid var(--line);padding:14px 0;margin:0;color:#485467}.check-list b{font-size:11px;color:#a98549;margin-right:18px}.tinted{background:var(--tint)}.mini-card{min-height:0}.mini-card h3{font-size:22px}.notice{padding:17px 19px;background:#f4efe4;border-left:3px solid var(--gold);color:#5c5960;font-size:13px;margin-top:22px}.legal-copy{max-width:850px}.legal-copy h2{font-size:25px;margin:36px 0 12px}.legal-copy p{color:#515d6d}.legal-copy a{color:#8a682f;text-decoration:underline}.contact-panel{background:var(--navy);color:white;padding:34px}.contact-panel h2{color:white}.contact-line{padding:15px 0;border-bottom:1px solid #33445d;display:flex;flex-direction:column;gap:3px}.contact-line span{font-size:10px;letter-spacing:1.7px;text-transform:uppercase;color:var(--gold2)}.contact-line a{color:white}.contact-panel .notice{background:#24354c;color:#dce3ed}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.form-grid label{font-size:12px;font-weight:750;color:#465267;display:flex;flex-direction:column;gap:7px}.form-grid .full{grid-column:1/-1}.form-grid input,.form-grid textarea,.form-grid select{width:100%;padding:13px 12px;border:1px solid #d9dce1;background:#fff;border-radius:2px;outline:none;color:var(--ink)}.form-grid input:focus,.form-grid textarea:focus,.form-grid select:focus{border-color:#ad8b4f;box-shadow:0 0 0 3px rgba(200,168,106,.14)}.form-grid .consent{display:flex;flex-direction:row;align-items:flex-start;font-weight:500;color:var(--muted);gap:10px}.form-grid .consent input{width:auto;margin-top:4px}.form-note{font-size:11px;color:var(--muted);margin-top:12px}.clean-list{padding-left:19px;color:var(--muted);font-size:14px}.clean-list li{margin:10px 0}.site-footer{background:#0b1423;color:#c5cedb;padding:48px 0 24px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:45px}.footer-brand .brand-name{color:white}.footer-brand p{font-size:13px;color:#aab5c5;max-width:320px;margin-top:18px}.footer-title{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--gold2);font-weight:800;margin-bottom:15px}.footer-links{display:grid;gap:8px;font-size:12px}.footer-links a:hover{color:var(--gold2)}.footer-bottom{border-top:1px solid #263247;margin-top:36px;padding-top:19px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:10px;color:#8f9bae}.legal-links{display:flex;gap:14px;flex-wrap:wrap}.sticky-enquiry{position:fixed;right:18px;bottom:18px;z-index:25}.sticky-enquiry button{background:var(--gold);border:0;box-shadow:0 8px 28px rgba(0,0,0,.22);padding:14px 18px;font-weight:800;font-size:12px;cursor:pointer}.enquiry-drawer{position:fixed;right:18px;bottom:74px;width:min(360px,calc(100vw - 36px));background:white;border:1px solid var(--line);box-shadow:0 20px 70px rgba(0,0,0,.25);z-index:26;padding:22px;display:none}.enquiry-drawer.open{display:block}.drawer-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.drawer-top h3{margin:0;font-size:22px}.drawer-close{border:0;background:#f0eee9;padding:5px 9px;cursor:pointer}.enquiry-drawer p{font-size:12px;color:var(--muted)}.enquiry-drawer .form-grid{grid-template-columns:1fr;gap:10px}.enquiry-drawer .form-grid label{font-size:11px}.enquiry-drawer input,.enquiry-drawer select,.enquiry-drawer textarea{padding:10px}.mobile-note{display:none}
@media(max-width:980px){.nav-links{gap:12px;font-size:11px}.brand{min-width:170px}.brand-name{font-size:21px}.split{gap:35px}.cards.three{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.wrap{width:min(100% - 30px,1160px)}.nav{min-height:72px;flex-wrap:wrap}.menu-toggle{display:block}.nav-links{display:none;width:100%;padding:0 0 18px;flex-direction:column;align-items:stretch;gap:4px}.nav-links.open{display:flex}.nav-links a{padding:10px 6px}.nav-cta{text-align:center}.hero-inner{padding:72px 0 64px}.page-hero .hero-inner{padding:60px 0 50px}.hero .lead{font-size:16px}.hero-meta{gap:12px;flex-direction:column}.stats-grid{grid-template-columns:1fr}.stat{padding:22px}.section{padding:54px 0}.cards,.cards.three,.split,.footer-grid{grid-template-columns:1fr;gap:14px}.split{gap:26px}.service-card{padding:23px;min-height:0}.dark-band{padding:48px 22px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.contact-panel{padding:25px}.footer-grid{gap:30px}.footer-bottom{flex-direction:column}.sticky-enquiry{right:10px;bottom:10px}.sticky-enquiry button{padding:12px 14px}.enquiry-drawer{right:10px;bottom:62px;width:calc(100vw - 20px)}}

/* Official Lexgurus logo integration */
.brand-mark.brand-image{width:48px;height:48px;border:0;background:#101010;overflow:hidden;flex:0 0 48px}
.brand-mark.brand-image:after{display:none}
.brand-mark.brand-image img{width:100%;height:100%;object-fit:cover;display:block}
.home-logo-showcase{margin-top:32px;width:min(240px,62vw);border:1px solid rgba(200,168,106,.38);padding:6px;background:#0a0a0a;box-shadow:0 18px 48px rgba(0,0,0,.25)}
.home-logo-showcase img{display:block;width:100%;height:auto}
@media(min-width:900px){.home-logo-showcase{position:absolute;right:0;bottom:28px;width:190px;opacity:.96}.hero-inner{padding-right:220px}}
@media(max-width:760px){.home-logo-showcase{width:170px;margin-top:25px}.hero-inner{padding-right:0}}

/* Footer updates requested for Lexgurus */
.footer-grid-four{grid-template-columns:1.25fr .7fr 1fr 1fr}
.social-title{margin-top:22px}
.social-links span{font-size:12px;color:#aab5c5}
.footer-bottom{align-items:center}
.footer-bottom span:first-child{order:1}
.footer-bottom span:last-child{order:2;text-align:right}
@media(max-width:760px){.footer-grid-four{grid-template-columns:1fr}.footer-bottom span:last-child{text-align:left}}


/* Layout refinement: consistent page gutters, readable content width and aligned footer columns */
.section:not(.split) {
  padding-left: 22px;
  padding-right: 22px;
}
.section:not(.split) > * {
  width: min(1160px, 100%);
  margin-left: auto;
  margin-right: auto;
}
.section.split {
  width: min(1204px, 100%);
  margin-left: auto;
  margin-right: auto;
  padding-left: 22px;
  padding-right: 22px;
}
.legal-copy {
  margin-left: auto;
  margin-right: auto;
  padding-left: 22px;
  padding-right: 22px;
  box-sizing: content-box;
}
.footer-grid-four {
  grid-template-columns: minmax(230px, 1.35fr) minmax(110px, .72fr) minmax(190px, 1.05fr) minmax(190px, 1fr);
  align-items: start;
  gap: clamp(22px, 3vw, 42px);
}
.footer-grid-four > * { min-width: 0; }
.footer-links { align-content: start; }
.footer-bottom { align-items: flex-start; }
.footer-bottom span:last-child { margin-left: auto; }
@media (max-width: 980px) {
  .footer-grid-four { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .section:not(.split) { padding-left: 15px; padding-right: 15px; }
  .section.split { padding-left: 15px; padding-right: 15px; }
  .legal-copy { padding-left: 15px; padding-right: 15px; }
  .footer-grid-four { grid-template-columns: 1fr; }
  .footer-bottom { gap: 8px; }
  .footer-bottom span:last-child { margin-left: 0; text-align: left; }
}


/* Career resume picker and one-line desktop footer alignment */
.resume-upload input[type="file"] { padding: 11px 12px; background: #fff; cursor: pointer; }
.resume-upload .form-note { display: block; margin-top: 2px; font-weight: 400; }
.footer-grid-four { grid-template-columns: minmax(220px, 1.25fr) minmax(100px, .62fr) minmax(180px, 1fr) minmax(205px, 1fr); gap: 28px; }
.footer-grid-four .social-links { display: flex; flex-direction: row; flex-wrap: wrap; gap: 8px 16px; margin-top: 12px; }
.footer-bottom { flex-wrap: nowrap; align-items: center; }
.footer-bottom span:last-child { margin-left: auto; text-align: right; white-space: nowrap; }
@media (max-width: 980px) {
  .footer-grid-four { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .footer-bottom { flex-wrap: wrap; }
  .footer-bottom span:last-child { margin-left: 0; text-align: left; white-space: normal; }
}
@media (max-width: 760px) {
  .footer-grid-four { grid-template-columns: 1fr; }
  .footer-grid-four .social-links { flex-direction: row; }
}

/* Contact page social links: moved out of footer into Contact Details */
.contact-social{padding-top:22px;margin-top:8px;border-top:1px solid #33445d}
.contact-social-title{font-size:10px;letter-spacing:1.7px;text-transform:uppercase;color:var(--gold2);font-weight:800;margin-bottom:10px}
.contact-social-links{display:flex;flex-wrap:wrap;gap:10px 18px;font-size:13px}
.contact-social-links a{color:#fff;text-decoration:underline;text-decoration-color:rgba(227,207,170,.55);text-underline-offset:4px}
.contact-social-links a:hover{color:var(--gold2)}


/* Form submission enhancements */
.hidden-field { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.netlify-form input[type="file"] { display: block; width: 100%; margin-top: 10px; padding: 12px; border: 1px solid var(--line, #d8dbe2); border-radius: 4px; background: #fff; }
.form-status { padding: 12px 14px; border: 1px solid #d8dbe2; border-radius: 4px; }


/* Service detail popups on the home page */
.service-card { cursor: pointer; }
.service-modal-backdrop { display:none; position:fixed; inset:0; z-index:9999; padding:24px; background:rgba(5,12,24,.76); align-items:center; justify-content:center; }
.service-modal-backdrop.is-open { display:flex; }
.service-modal { position:relative; width:min(760px,100%); max-height:88vh; overflow:auto; background:#fffdf8; color:#17243a; border:1px solid rgba(185,148,77,.45); border-radius:16px; padding:clamp(24px,4vw,42px); box-shadow:0 24px 80px rgba(0,0,0,.3); }
.service-modal h2 { margin:8px 48px 14px 0; }
.service-modal h3 { margin-top:24px; }
.service-modal li { margin:0 0 10px; line-height:1.6; }
.service-modal-close { position:absolute; top:14px; right:16px; width:42px; height:42px; border:1px solid #d8d1c5; border-radius:50%; background:transparent; font-size:30px; line-height:1; color:#17243a; cursor:pointer; }
.service-modal-note { padding:14px 16px; margin:22px 0; background:#f4f0e7; border-left:3px solid #b99755; font-size:.92rem; }
@media(max-width:600px) { .service-modal-backdrop { padding:10px; } .service-modal { max-height:94vh; padding:24px 18px; } }

/* Reliable service popups and detailed service-page layout */
.service-modal-backdrop { z-index:99999 !important; }
.service-modal-backdrop.is-open { display:flex !important; visibility:visible !important; opacity:1 !important; }
.service-modal { display:block !important; visibility:visible !important; }
.detail-service-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; max-width:1160px; margin:0 auto; }
.detail-service { padding:24px; border:1px solid rgba(185,148,77,.32); border-radius:12px; background:rgba(255,255,255,.72); }
.detail-service h3 { margin-top:0; }
.detail-service p { line-height:1.75; }
.service-scope-note { margin-top:34px; }
@media(max-width:760px) { .detail-service-list { grid-template-columns:1fr; } }

/* LEXGURUS POPUP HARDENING */
#serviceModal.service-modal-backdrop { display:none; position:fixed; inset:0; z-index:2147483000; padding:24px; background:rgba(5,12,24,.82); align-items:center; justify-content:center; }
#serviceModal.service-modal-backdrop.is-open { display:flex !important; visibility:visible !important; opacity:1 !important; pointer-events:auto !important; }
#serviceModal .service-modal { display:block !important; visibility:visible !important; opacity:1 !important; pointer-events:auto !important; position:relative; z-index:2147483001; }

/* Clickable service cards on detailed service pages */
main .service-card[role="button"]{cursor:pointer}
