
:root{--bg:#0b0d10;--panel:#11151a;--panel2:#171c22;--text:#f6f4ef;--muted:#a6adb7;--accent:#e8a61a;--accent2:#f6c453;--line:#252b33;--max:1180px;--serif:Georgia,"Times New Roman",serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,"Helvetica Neue",sans-serif;line-height:1.7;-webkit-font-smoothing:antialiased}a{color:inherit}.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:16px;z-index:99;background:var(--accent);color:#111;padding:10px}.nav{border-bottom:1px solid rgba(255,255,255,.08);background:rgba(11,13,16,.94);backdrop-filter:blur(14px);position:sticky;top:0;z-index:20}.navin{max-width:var(--max);margin:auto;padding:18px 28px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{font-weight:800;text-decoration:none;letter-spacing:.12em;font-size:14px;white-space:nowrap}.links{display:flex;align-items:center;gap:8px 22px}.links a{text-decoration:none;color:var(--muted);font-size:13px;font-weight:700}.links a:hover,.links a.active{color:var(--text)}.links a.active{position:relative}.links a.active:after{content:"";position:absolute;left:0;right:0;bottom:-9px;height:2px;background:var(--accent)}.menu{display:none;background:none;border:1px solid var(--line);color:var(--text);padding:8px 11px;font-weight:700}.wrap{max-width:var(--max);margin:auto;padding-left:28px;padding-right:28px}.hero{padding-top:110px;padding-bottom:92px;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;width:380px;height:380px;border:1px solid rgba(232,166,26,.14);border-radius:50%;right:4%;top:40px;pointer-events:none}.hero-grid{display:grid;grid-template-columns:1.45fr .55fr;gap:70px;align-items:center}.eyebrow{color:var(--accent2);font-weight:800;text-transform:uppercase;letter-spacing:.18em;font-size:11px}.hero h1,.section h2,.article h1,.resume h1{font-family:var(--serif);font-weight:500;letter-spacing:-.04em}.hero h1{font-size:clamp(52px,7vw,88px);line-height:.98;margin:18px 0 28px;max-width:920px}.hero p{font-size:19px;color:var(--muted);max-width:760px}.headshot{width:100%;max-width:340px;justify-self:end;filter:grayscale(10%);border-bottom:4px solid var(--accent)}.actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.btn{display:inline-flex;padding:13px 20px;border:1px solid var(--accent);background:var(--accent);color:#0b0d10!important;text-decoration:none;font-weight:800;font-size:13px}.btn:hover{background:var(--accent2)}.btn.alt{background:transparent;color:var(--text)!important;border-color:var(--line)}.section{padding-top:78px;padding-bottom:78px;border-top:1px solid rgba(255,255,255,.07)}.section h2{font-size:clamp(36px,5vw,56px);line-height:1.08;margin:10px 0 18px;max-width:900px}.lead{color:var(--muted);font-size:18px;max-width:860px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin-top:36px;background:var(--line);border:1px solid var(--line)}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.card{background:var(--panel);padding:32px;min-height:180px}.card:hover{background:var(--panel2)}.card h3{margin:0 0 10px;font-family:var(--serif);font-size:24px;font-weight:500}.card p{margin:0;color:var(--muted)}.statrow{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:35px}.stat{background:var(--panel);padding:25px}.stat strong{display:block;font-family:var(--serif);font-size:31px;font-weight:500}.stat span{color:var(--muted);font-size:12px}.note{border-top:1px solid var(--line);padding:34px 0}.note h2{font-family:var(--serif);font-size:clamp(28px,4vw,42px);line-height:1.12;margin:8px 0 14px;font-weight:500}.note h2 a{text-decoration:none}.note p{color:#c9ced5;max-width:900px}.more{color:var(--accent2);text-decoration:none;font-weight:800;font-size:13px}.callout{border-left:2px solid var(--accent);padding:4px 0 4px 25px;margin:36px 0;font-family:var(--serif);font-size:clamp(24px,3vw,34px);line-height:1.35;max-width:900px}.article{max-width:860px;padding-top:90px;padding-bottom:80px}.article h1,.resume h1{font-size:clamp(44px,6vw,68px);line-height:1.04;margin:15px 0 30px}.article p{font-size:18px;color:#c9ced5}.resume{padding-top:90px;padding-bottom:80px}.resume .summary{max-width:950px;color:#c9ced5;font-size:18px}.timeline{margin-top:38px}.role{display:grid;grid-template-columns:170px 1fr;gap:34px;padding:32px 0;border-top:1px solid var(--line)}.role .date{color:var(--accent2);font-weight:800;font-size:12px;letter-spacing:.08em}.role h3{font-family:var(--serif);font-size:25px;font-weight:500;margin:0}.role h4{margin:3px 0 12px;color:var(--muted);font-size:14px}.role p{color:#c9ced5;margin:0}.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.tag{border:1px solid var(--line);padding:7px 10px;color:var(--muted);font-size:12px}.footer{border-top:1px solid var(--line);color:#7f8791;text-align:center;padding:38px 24px;font-size:12px}.footer a{color:#9ba2ab;text-decoration:none}.legal{max-width:820px}.legal p{color:var(--muted)}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}@media(max-width:900px){.hero-grid{grid-template-columns:1fr}.headshot{justify-self:start;max-width:250px}.grid.three,.statrow{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.navin{padding:15px 20px}.menu{display:block}.links{display:none;position:absolute;left:0;right:0;top:61px;background:#0b0d10;border-bottom:1px solid var(--line);padding:18px 20px;flex-direction:column;align-items:flex-start}.links.open{display:flex}.links a.active:after{display:none}.wrap{padding-left:20px;padding-right:20px}.hero{padding-top:68px;padding-bottom:60px}.hero h1{font-size:48px}.grid,.grid.three,.statrow{grid-template-columns:1fr}.section{padding-top:56px;padding-bottom:56px}.role{grid-template-columns:1fr;gap:8px}.article,.resume{padding-top:65px}.hero:after{width:220px;height:220px}}

/* v7.2 hero portrait treatment: replace decorative circle with restrained gold corner framing */
.hero:after{display:none}
.hero-grid .headshot{position:relative;border-bottom:3px solid var(--accent)}
.hero-grid{position:relative}
.hero-grid:after{content:"";position:absolute;right:340px;top:calc(50% - 170px);width:3px;height:86px;background:var(--accent);pointer-events:none}
@media(max-width:900px){.hero-grid:after{right:auto;left:0;top:auto;bottom:164px;height:58px}}
@media(max-width:760px){.hero-grid:after{display:none}}
/* precise portrait frame */
.hero-grid:after{display:none}
.headshot-frame{position:relative;justify-self:end;width:100%;max-width:340px}
.headshot-frame:before{content:"";position:absolute;left:-3px;top:0;width:3px;height:86px;background:var(--accent);z-index:2}
.headshot-frame .headshot{display:block;width:100%;max-width:none;justify-self:auto;border-bottom:3px solid var(--accent)}
@media(max-width:900px){.headshot-frame{justify-self:start;max-width:250px}.headshot-frame:before{height:62px}}

/* Consulting contact form */
.contact-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(420px,1.2fr);gap:72px;align-items:start}.contact-direct{margin-top:24px;color:var(--muted)}.contact-direct a{color:var(--accent2)}.contact-form{border-top:1px solid var(--line);padding-top:4px}.form-row{display:grid;gap:8px;padding:18px 0;border-bottom:1px solid var(--line)}.form-row label{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#d9dde2}.form-row .optional{font-weight:500;color:#7f8791;letter-spacing:0;text-transform:none;margin-left:6px}.form-row input,.form-row textarea{width:100%;border:1px solid #30363d;background:#0b0d10;color:var(--text);font:inherit;padding:13px 14px;border-radius:0;outline:none}.form-row textarea{resize:vertical;min-height:150px}.form-row input:focus,.form-row textarea:focus{border-color:var(--accent)}.form-submit{border-radius:0;cursor:pointer;margin-top:22px}.form-submit:disabled{opacity:.65;cursor:wait}.form-status{min-height:24px;margin-top:14px;color:var(--muted);font-size:14px}.form-status.success{color:#c8d8c4}.form-status.error{color:#e7b6ae}.hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:900px){.contact-layout{grid-template-columns:1fr;gap:36px}}

/* V7.10 contact form */
.contact-section{padding-top:clamp(64px,8vw,110px);padding-bottom:clamp(72px,9vw,120px)}
.contact-layout{display:block;max-width:1120px}
.contact-layout>div:first-child{max-width:900px;margin-bottom:38px}
.contact-layout h2{max-width:980px;margin-bottom:16px}
.contact-layout .lead{max-width:850px}
.contact-direct{margin-top:20px}
.contact-form{border-top:0;padding-top:0;max-width:1120px;display:grid;grid-template-columns:1fr 1fr;gap:24px 30px}
.form-row{display:flex;flex-direction:column;gap:9px;padding:0;border:0}
.form-row:nth-of-type(3),.form-row:nth-of-type(4){grid-column:1/-1}
.form-row label{font-size:15px;font-weight:600;letter-spacing:0;text-transform:none;color:var(--text)}
.form-row .optional{font-size:13px;font-weight:500;color:var(--muted);margin-left:4px}
.form-row input,.form-row textarea{box-sizing:border-box;width:100%;border:1px solid #3b434d;background:#0d1115;color:var(--text);font:inherit;font-size:16px;padding:16px 18px;border-radius:6px;outline:none;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}
.form-row input{min-height:56px}.form-row textarea{resize:vertical;min-height:170px;line-height:1.55}
.form-row input:hover,.form-row textarea:hover{border-color:#59636f}
.form-row input:focus,.form-row textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(241,176,0,.12);background:#101419}
.form-row input::placeholder,.form-row textarea::placeholder{color:#7f8995}
.form-submit{grid-column:1/-1;justify-self:start;min-width:210px;min-height:56px;border:0;border-radius:2px;cursor:pointer;margin-top:4px;font-size:13px;letter-spacing:.08em;text-transform:uppercase}
.form-status{grid-column:1/-1;min-height:22px;margin-top:-10px;color:var(--muted);font-size:14px}
.form-status.success{color:#c8d8c4}.form-status.error{color:#e7b6ae}
.hp{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
@media(max-width:760px){.contact-form{grid-template-columns:1fr;gap:20px}.form-row:nth-of-type(3),.form-row:nth-of-type(4),.form-submit,.form-status{grid-column:1}.form-submit{width:100%}}


/* V7.10 consulting form — isolated component selectors */
.dr-contact-form{width:100%;max-width:1120px;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:24px 30px!important;margin:0!important;padding:0!important;border:0!important}
.dr-field{display:flex!important;flex-direction:column!important;gap:9px!important;margin:0!important;padding:0!important;border:0!important;min-width:0}
.dr-field:nth-of-type(3),.dr-field:nth-of-type(4){grid-column:1/-1!important}
.dr-field label{display:block!important;margin:0!important;font-size:15px!important;font-weight:600!important;letter-spacing:0!important;text-transform:none!important;color:var(--text)!important}
.dr-field .dr-optional{font-size:13px!important;font-weight:500!important;color:var(--muted)!important;margin-left:4px!important}
.dr-field input,.dr-field textarea{display:block!important;box-sizing:border-box!important;width:100%!important;margin:0!important;border:1px solid #3b434d!important;background:#0d1115!important;color:var(--text)!important;font-family:Arial,"Helvetica Neue",sans-serif!important;font-size:16px!important;line-height:1.45!important;padding:16px 18px!important;border-radius:6px!important;outline:none!important;-webkit-appearance:none!important;appearance:none!important;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease!important}
.dr-field input{height:56px!important}.dr-field textarea{min-height:170px!important;height:auto!important;resize:vertical!important;line-height:1.55!important}
.dr-field input:hover,.dr-field textarea:hover{border-color:#59636f!important}
.dr-field input:focus,.dr-field textarea:focus{border-color:var(--accent)!important;box-shadow:0 0 0 3px rgba(232,166,26,.14)!important;background:#101419!important}
.dr-field input::placeholder,.dr-field textarea::placeholder{color:#7f8995!important;opacity:1!important}
.dr-submit{grid-column:1/-1!important;justify-self:start!important;min-width:210px!important;min-height:56px!important;border:0!important;border-radius:2px!important;cursor:pointer!important;margin:4px 0 0!important;font-size:13px!important;letter-spacing:.08em!important;text-transform:uppercase!important}
.dr-submit:disabled{opacity:.65!important;cursor:wait!important}
.dr-status{grid-column:1/-1!important;min-height:22px!important;margin:-10px 0 0!important;color:var(--muted)!important;font-size:14px!important}
.dr-status.success{color:#c8d8c4!important}.dr-status.error{color:#e7b6ae!important}
.dr-honeypot,[hidden].dr-honeypot{display:none!important;position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
@media(max-width:760px){.dr-contact-form{grid-template-columns:1fr!important;gap:20px!important}.dr-field:nth-of-type(3),.dr-field:nth-of-type(4),.dr-submit,.dr-status{grid-column:1!important}.dr-submit{width:100%!important}}

/* V7.10 — keep Chrome/Safari autofill consistent with the dark form */
.dr-field input:-webkit-autofill,
.dr-field input:-webkit-autofill:hover,
.dr-field input:-webkit-autofill:focus,
.dr-field input:-webkit-autofill:active{
  -webkit-text-fill-color:var(--text)!important;
  -webkit-box-shadow:0 0 0 1000px #0d1115 inset!important;
  box-shadow:0 0 0 1000px #0d1115 inset!important;
  caret-color:var(--text)!important;
  border:1px solid #3b434d!important;
  transition:background-color 9999s ease-out 0s!important;
}
