/* Douglas Leidgen — resume website. All presentation rules live in this file. */
:root{--navy:#101b2c;--navy2:#17263a;--ink:#202a36;--muted:#65717e;--line:#dce1e4;--accent:#b6dfcf;--paper:#fff;--soft:#f5f7f6;--max:1160px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.7;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #48a990;outline-offset:4px}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3{line-height:1.14;letter-spacing:-.035em}h1,h2{font-weight:600}em{font-family:Georgia,serif;font-weight:400}.container{width:min(var(--max),calc(100% - 72px));margin-inline:auto}.skip-link{position:absolute;top:-80px;left:20px;background:white;padding:12px;z-index:20}.skip-link:focus{top:12px}.site-header{background:var(--navy);color:#fff;border-bottom:1px solid #ffffff21;position:relative;z-index:5}.header-inner{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;gap:16px;font-size:14px;font-weight:700;letter-spacing:.01em;white-space:nowrap}.brand-mark{font-size:26px;letter-spacing:-.08em}.brand-mark span{color:var(--accent)}.brand-name{border-left:1px solid #ffffff45;padding-left:16px}.nav{display:flex;gap:28px;align-items:center;font-size:12px;font-weight:700;letter-spacing:.04em}.nav a:hover,.footer-inner a:hover{color:var(--accent)}.nav-contact{border:1px solid #ffffff70;padding:10px 17px}.nav-contact span{padding-left:8px}.hero{background:var(--navy);color:white;overflow:hidden}.hero-inner{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(225px,.7fr);gap:8%;padding-top:110px;padding-bottom:105px}.eyebrow,.section-index{font-size:11px;font-weight:700;letter-spacing:.17em}.eyebrow{display:flex;align-items:center;gap:12px;color:var(--accent);margin-bottom:32px}.eyebrow-line{display:inline-block;width:25px;height:1px;background:var(--accent)}h1{font-size:clamp(48px,6.2vw,86px);line-height:1.07;margin-bottom:28px}h1 em,.contact-section h2 em{color:var(--accent)}.hero-role{font-size:14px;font-weight:700;letter-spacing:.025em;margin-bottom:20px}.hero-role span{color:var(--accent);margin:0 9px}.hero-description{font-size:17px;max-width:560px;color:#c0cbd3;line-height:1.85}.hero-actions,.contact-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;padding:13px 22px;font-size:12px;font-weight:700;min-height:48px;transition:background .2s,color .2s,border-color .2s}.button-primary{background:var(--accent);color:var(--navy)}.button-primary:hover{background:#d5f1e5}.button-outline{border:1px solid #7c8997;color:white}.button-outline:hover{background:#ffffff18}.hero-side{border-left:1px solid #ffffff36;padding-left:38px;display:flex;flex-direction:column;justify-content:center}.hero-stat{padding:18px 0;border-bottom:1px solid #ffffff2a}.hero-stat strong{font-size:52px;font-weight:500;line-height:1.1;letter-spacing:-.055em;display:block}.hero-stat strong span{color:var(--accent)}.hero-stat>span{display:block;font-size:12px;color:#c4cdd5;margin-top:6px}.stat-note{font-size:11px;color:#95a5b5;margin-top:20px;line-height:1.5}.hero-bottom{display:flex;justify-content:space-between;gap:20px;padding-bottom:25px;color:#9eb0be;font-size:10px;letter-spacing:.12em}.hero-bottom a{color:var(--accent)}.section{padding:108px 0}.section-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:12%}.section-index{display:block;color:#538879;margin-bottom:22px}.section h2,.contact-section h2{font-size:clamp(40px,4.4vw,62px);margin-bottom:0}.section h2 em{color:#5b887b}.section-body{max-width:670px}.lead{font-size:25px;line-height:1.5;letter-spacing:-.02em;color:var(--navy);margin-bottom:24px}.section-body>p:not(.lead){color:var(--muted);font-size:15px}.focus-strip{display:flex;gap:10px;flex-wrap:wrap;margin-top:30px}.focus-strip span{border:1px solid var(--line);padding:8px 12px;font-size:11px;font-weight:700;color:#466f64}.section-muted{background:var(--soft)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:45px}.section-heading>p{max-width:340px;color:var(--muted);font-size:14px;margin-bottom:4px}.expertise-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}.expertise-card{background:var(--soft);padding:34px 30px;min-height:280px}.card-number{display:block;color:#689a8b;font-size:11px;font-weight:700;letter-spacing:.1em;margin-bottom:45px}.expertise-card h3{font-size:21px;margin-bottom:16px}.expertise-card p{color:var(--muted);font-size:13px;line-height:1.8;margin:0}.timeline{border-top:1px solid var(--line)}.job{display:grid;grid-template-columns:27% 1fr;gap:30px;border-bottom:1px solid var(--line);padding:40px 0}.job-meta{display:flex;flex-direction:column;gap:8px}.job-date{font-size:11px;font-weight:700;letter-spacing:.11em;color:#4d8b78}.job-location{font-size:12px;color:var(--muted)}.job-detail h3{font-size:27px;margin:0 0 4px}.company{font-weight:700;color:#5c887c;font-size:14px;margin-bottom:20px}.job-detail>p:not(.company){color:var(--muted);font-size:14px;max-width:760px}.job-detail ul{padding-left:19px;margin:20px 0 0;color:#56616b;font-size:13px;line-height:1.8}.job-detail li{padding-left:6px;margin-bottom:10px}.job-detail li::marker{color:#6ca38f}.job-detail strong{color:var(--navy)}.credentials-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:20px}.credentials-panel{background:#fff;padding:38px 42px}.credentials-panel h3{font-size:23px;margin-bottom:28px}.credential-list{padding:0;margin:0;list-style:none}.credential-list li{padding:12px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;font-size:13px}.credential-list li strong{color:var(--navy)}.credential-list li span{color:var(--muted);text-align:right;max-width:54%}.credentials-panel h4{margin:32px 0 8px;font-size:14px}.credentials-panel>p{font-size:13px;color:var(--muted)}.education-type{color:#548b7c;font-size:11px;font-weight:700;letter-spacing:.1em}.education-panel h4{font-size:26px;line-height:1.3;margin:15px 0}.graduation{display:inline-block;margin-top:30px;padding:9px 13px;background:var(--soft);font-size:12px;color:#567c70}.contact-section{background:var(--navy2);color:white;padding:105px 0}.contact-inner{max-width:var(--max)}.contact-section h2{font-size:clamp(48px,6vw,80px);margin-bottom:20px}.contact-inner>p{max-width:500px;color:#bbc7d0;font-size:15px}.light-outline{border-color:#748496}.contact-details{display:flex;gap:28px;flex-wrap:wrap;margin-top:65px;padding-top:25px;border-top:1px solid #ffffff35;font-size:13px}.contact-details a:hover{color:var(--accent)}.site-footer{background:#0b1421;color:#a5b3c1}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:75px;font-size:11px;letter-spacing:.03em}
@media(max-width:900px){.nav{gap:15px}.hero-inner{gap:5%}.hero-side{padding-left:24px}.expertise-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-grid{gap:7%}.credentials-grid{grid-template-columns:1fr 1fr}.credentials-panel{padding:28px}.credential-list li{display:block}.credential-list li span{display:block;text-align:left;max-width:none}}
@media(max-width:680px){.container{width:min(var(--max),calc(100% - 36px))}.header-inner{min-height:74px;align-items:flex-start;flex-direction:column;padding:16px 0;gap:13px}.nav{width:100%;overflow-x:auto;white-space:nowrap;padding-bottom:5px;gap:18px}.nav-contact{border:0;padding:0}.brand{font-size:12px}.hero-inner{grid-template-columns:1fr;padding-top:72px;padding-bottom:50px}.hero-side{border-left:0;border-top:1px solid #ffffff36;padding:25px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.hero-stat{border:0;padding:0}.hero-stat strong{font-size:32px}.hero-stat>span{font-size:10px;line-height:1.5}.stat-note{grid-column:1/-1;margin:0}.hero-bottom{font-size:9px}.hero-bottom>a{display:none}.section{padding:72px 0}.section-grid,.credentials-grid{grid-template-columns:1fr;gap:32px}.section-heading{display:block}.section-heading>p{margin-top:20px}.lead{font-size:21px}.expertise-grid{grid-template-columns:1fr}.expertise-card{min-height:0;padding:28px}.card-number{margin-bottom:20px}.job{grid-template-columns:1fr;gap:15px;padding:32px 0}.job-meta{flex-direction:row;justify-content:space-between;flex-wrap:wrap}.job-detail h3{font-size:23px}.credentials-panel{padding:28px}.contact-section{padding:75px 0}.contact-details{margin-top:40px}.footer-inner{flex-wrap:wrap;padding:20px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{html{scroll-behavior:auto}body{font-size:10pt;color:#111}.site-header,.hero-actions,.hero-bottom,.contact-actions,.site-footer,.skip-link{display:none!important}.hero,.contact-section{background:white!important;color:#111!important}.hero-inner{padding:20px 0}.hero-description,.hero-stat>span,.stat-note,.contact-inner>p{color:#333!important}.hero-side{border-color:#ddd}.hero-stat strong,.hero-stat strong span,h1 em,.contact-section h2 em{color:#111!important}.section,.contact-section{padding:25px 0}.section-muted{background:white}.expertise-card,.credentials-panel{background:white}.expertise-grid{grid-template-columns:repeat(2,1fr)}.expertise-card{min-height:0;padding:15px}.card-number{margin-bottom:8px}.job{break-inside:avoid;padding:15px 0}.credentials-grid{gap:10px}.contact-section h2{font-size:32px}.contact-details{margin-top:10px}a{text-decoration:none}}
