@import "https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800&family=DM+Sans:wght@400;500;600;700&display=swap";
:root{--bg:#111211;--panel:#191a17;--ink:#f4f1e8;--muted:#aaa99f;--gold:#e4c24b;--line:#36372d}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{background:var(--bg);color:var(--ink);margin:0;font-family:DM Sans,Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:6px}::selection{background:var(--gold);color:var(--bg)}header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;max-width:1440px;height:88px;margin:auto;padding:0 6%;display:flex}.brand{letter-spacing:-1px;font-size:25px;font-weight:800}.brand span{color:var(--gold)}.brand small{letter-spacing:1.3px;vertical-align:middle;margin-left:10px;font-size:12px}nav{align-items:center;gap:30px;font-size:14px;display:flex}nav a:hover,.text-link:hover,footer a:hover{color:var(--gold)}.nav-contact{border:1px solid #77704d;padding:9px 21px}.menu{display:none}.skip{background:var(--gold);color:#000;z-index:5;padding:12px;position:absolute;top:-80px}.skip:focus{top:0}.hero{grid-template-columns:1.18fr 1fr;gap:60px;max-width:1440px;margin:auto;padding:62px 6% 45px;display:grid;position:relative;overflow:hidden}.eyebrow,.section-label{letter-spacing:2px;color:var(--gold);font-size:12px;font-weight:600}.eyebrow{align-items:center;gap:12px;display:flex}.dash{background:var(--gold);width:25px;height:1px}h1,h2,h3,p{margin-top:0}h1,h2{letter-spacing:-1px;font-family:Barlow Condensed,Arial Narrow,Impact,sans-serif;font-weight:700;line-height:.97}h1{margin:28px 0 26px;font-size:clamp(80px,8.3vw,122px)}em{color:var(--gold);font-style:normal}.intro{color:#bbbcb1;max-width:445px;font-size:17px;line-height:1.8}.actions{gap:13px;margin:28px 0 40px;display:flex}.button{padding:13px 22px;font-size:14px;font-weight:600;transition:background .2s,transform .2s}.button:hover{transform:translateY(-3px)}.primary{background:var(--gold);color:#15160f}.primary:hover{background:#f8da71}.secondary{border:1px solid var(--line)}.secondary:hover{border-color:var(--gold)}.hero-bottom{letter-spacing:1.6px;color:var(--muted);justify-content:space-between;max-width:490px;font-size:10px;display:flex}.hero-bottom a{align-items:center;gap:12px;display:flex}.scroll-line{background:var(--gold);width:32px;height:1px;display:block}.portrait-stage{align-self:stretch;padding:0 18px 0 0;animation:1.1s both appear;position:relative}.portrait-top,.photo-caption{letter-spacing:1.4px;color:var(--muted);justify-content:space-between;padding:0 0 15px;font-size:9px;display:flex}.photo-frame{background:#fff;border:1px solid #6b6340;height:560px;position:relative;overflow:hidden}.photo-frame img{object-fit:contain;object-position:center;width:100%;height:100%;display:block}.vertical-name{writing-mode:vertical-rl;color:#55584f;letter-spacing:3px;font-size:10px;position:absolute;top:25px;left:12px}.photo-caption{padding-top:14px}.photo-tag{background:var(--gold);color:#191b12;letter-spacing:2px;padding:13px 24px;font-size:11px;font-weight:700;position:absolute;bottom:84px;right:-13px;transform:rotate(-5deg)}.hero-copy{animation:.8s both appear}.ticker{letter-spacing:1px;white-space:nowrap;background:#1c1d17;border-top:1px solid #4a432a;border-bottom:1px solid #4a432a;justify-content:space-around;gap:24px;padding:23px 5%;font-family:Barlow Condensed,Impact,sans-serif;font-size:22px;display:flex;overflow:hidden}.ticker b{color:var(--gold);font-size:21px}.section{border-bottom:1px solid var(--line);max-width:1440px;margin:auto;padding:94px 6%;scroll-margin-top:24px}.section-label{margin-bottom:28px}h2{margin-bottom:38px;font-size:clamp(48px,5.4vw,78px)}h3{font-family:Barlow Condensed,Arial Narrow,Impact,sans-serif;font-size:38px;font-weight:600;line-height:1.1}p{color:var(--muted)}.about-grid{grid-template-columns:1fr 1fr;gap:80px;display:grid}.large-copy{color:var(--ink);font-size:24px;line-height:1.5}.stats{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);margin-top:46px;padding-top:30px;display:grid}.stats>div{border-left:1px solid var(--line);padding-left:35px}.stats>div:first-child{border:0;padding-left:0}.stats strong{font-family:Barlow Condensed,Impact,sans-serif;font-size:74px;line-height:1.1}.stats strong span{color:var(--gold)}.stats p{margin:10px 0;font-size:14px}.stats small{color:#77796d;font-size:12px}.section-heading{justify-content:space-between;align-items:end;gap:35px;display:flex}.aside-text{letter-spacing:1.7px;color:var(--muted);margin-bottom:45px;font-size:11px;line-height:1.8}.projects{gap:18px;display:grid}.project{background:linear-gradient(120deg,#1b1d18,#141512);border:1px solid #454532;grid-template-columns:50px 1fr 190px;gap:26px;padding:34px;transition:border-color .2s;display:grid}.project:hover{border-color:var(--gold)}.project-number{color:#aaa16c;font-family:Barlow Condensed,Impact,sans-serif;font-size:24px}.project h3{margin:16px 0}.project p{max-width:600px;font-size:15px}.project .eyebrow{letter-spacing:1.7px;font-size:10px}.tags{flex-wrap:wrap;gap:8px;margin:22px 0;display:flex}.tags span{color:#ceccba;border:1px solid #424433;padding:5px 10px;font-size:12px}.project-mark{text-align:center;color:#897b3e;letter-spacing:3px;opacity:.7;align-self:center;font-family:Barlow Condensed,Impact,sans-serif;font-size:56px;transform:rotate(-8deg)}details{border-top:1px solid var(--line);max-width:700px;padding-top:15px;font-size:14px}summary{cursor:pointer;justify-content:space-between;list-style:none;display:flex}summary::-webkit-details-marker{display:none}summary span{color:var(--gold);font-size:20px;line-height:1}details[open] summary span{transform:rotate(45deg)}li{color:var(--muted);margin:10px 0;padding-left:5px}li::marker{color:var(--gold)}.text-link{border-bottom:1px solid var(--gold);margin-top:27px;padding-bottom:5px;font-size:14px;display:inline-block}.experience article{border-top:1px solid var(--line);grid-template-columns:30% 1fr;gap:30px;padding:35px 0;display:grid}.experience article:last-child{padding-bottom:0}.experience-date span{color:var(--gold);letter-spacing:2px;font-size:12px}.experience-date p{letter-spacing:1px;margin:13px 0;font-size:12px}.experience h3{margin-bottom:10px}.experience h4{color:var(--gold);margin:0 0 16px;font-size:15px;font-weight:500}.experience li{font-size:15px}.experience ul{padding-left:16px}.skills{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;display:grid}.skills>div{border-bottom:1px solid var(--line);padding:27px 0}.skills>div:nth-child(2n){padding-left:40px}.skills h3{color:var(--gold);margin-bottom:20px;font-family:inherit;font-size:15px}.skills>div>div{flex-wrap:wrap;gap:10px 22px;max-width:450px;display:flex}.skills span{color:#c0c1b6;font-size:16px}.education{justify-content:space-between;align-items:start;gap:30px;margin-top:65px;display:flex}.education .section-label{padding-top:5px}.education h3{font-family:inherit;font-size:19px}.education p{margin-bottom:0;font-size:15px}.year{color:var(--gold);font-family:Barlow Condensed,Impact,sans-serif;font-size:32px}.contact{background:radial-gradient(at 80% 100%,#33301b 0%,#0000 60%);padding-bottom:85px}.contact h2{margin-bottom:27px;font-size:clamp(55px,7vw,100px)}.email{border-bottom:1px solid var(--gold);overflow-wrap:anywhere;margin:18px 0 30px;padding-bottom:8px;font-size:clamp(18px,2.6vw,36px);display:inline-block}.contact-links{color:var(--gold);gap:32px;font-size:14px;display:flex}.contact-links a:hover{text-decoration:underline}footer{justify-content:space-between;align-items:center;gap:20px;max-width:1440px;margin:auto;padding:28px 6%;display:flex}footer p{margin:0;font-size:12px}footer>a:last-child{letter-spacing:1.5px;font-size:10px}@keyframes appear{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (min-width:1600px){body{border-left:1px solid #25261e;border-right:1px solid #25261e;max-width:1600px;margin:auto}}@media (max-width:1000px){.hero{gap:30px;padding-top:45px}.photo-frame{height:520px}.brand small{display:none}nav{gap:20px}.hero-bottom{display:none}.hero h1{font-size:85px}.project{grid-template-columns:35px 1fr 100px}.project-mark{font-size:40px}.about-grid{gap:40px}.photo-tag{font-size:9px}.ticker{justify-content:flex-start;font-size:18px}}@media (max-width:700px){header{height:72px;padding:0 6%}.menu{color:var(--ink);border:1px solid var(--line);background:0 0;padding:6px 14px;font-size:14px;display:block}nav{z-index:5;border-bottom:1px solid var(--line);background:#181914;width:100%;padding:25px 6%;display:none;position:absolute;top:72px;left:0}nav.open{flex-wrap:wrap;gap:20px;display:flex}.hero{grid-template-columns:1fr;gap:20px;padding-top:35px}.hero h1{font-size:clamp(74px,17vw,115px);line-height:.96}.hero .eyebrow{font-size:10px}.intro{font-size:16px}.actions{gap:10px;margin-bottom:20px}.button{padding:12px 16px;font-size:13px}.portrait-stage{width:100%;max-width:430px;margin:10px auto 0;padding-right:10px}.photo-frame{height:480px}.photo-tag{right:-5px}.ticker{gap:24px;padding:18px 6%}.section{padding:65px 6%}.about-grid{grid-template-columns:1fr;gap:0}.large-copy{font-size:22px}.section-label{margin-bottom:22px;font-size:11px}.stats{gap:12px}.stats>div{padding-left:12px}.stats strong{font-size:49px}.stats p{font-size:12px;line-height:1.6}.stats small{font-size:11px}.section-heading{display:block}.aside-text{display:none}.project{grid-template-columns:25px 1fr;gap:12px;padding:22px 16px}.project h3{font-size:31px}.project-mark{display:none}.project p{font-size:14px}.tags span{padding:4px 7px;font-size:11px}.project .eyebrow{font-size:9px}.experience article{grid-template-columns:1fr;gap:10px}.experience-date{align-items:center;gap:16px;display:flex}.experience-date p{margin:0}.experience h3{font-size:32px}.skills{grid-template-columns:1fr}.skills>div:nth-child(2n){padding-left:0}.education{flex-wrap:wrap;gap:15px}.education .section-label{width:100%;margin-bottom:5px}.education>div{flex:1}.education h3{font-size:17px}.education p{font-size:14px}.contact h2{font-size:57px}.contact p{font-size:15px}footer{flex-wrap:wrap}footer .brand{font-size:21px}footer>a:last-child{display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.teaching-intro{grid-template-columns:1.15fr 1fr;gap:24px;margin:6px 0 44px;display:grid}.channel-panel,.instructor-panel{border:1px solid var(--line);background:var(--panel);padding:32px}.teaching-logo{width:100%;max-width:390px;height:auto;margin-bottom:30px;display:block}.channel-meta{justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;display:flex}.platform-label{letter-spacing:1.6px;color:var(--gold);font-size:12px}.channel-meta strong{text-align:right;font-family:Barlow Condensed,Impact,sans-serif;font-size:44px;line-height:1}.channel-meta small{color:var(--muted);margin-top:10px;font-family:DM Sans,Arial,sans-serif;font-size:12px;font-weight:400;display:block}.channel-panel p,.instructor-panel p{margin-bottom:0;font-size:16px;line-height:1.8}.instructor-panel{flex-direction:column;align-items:flex-start;display:flex}.instructor-panel h3{margin:22px 0 18px;font-size:42px}.instructor-panel .button{margin-top:26px;display:inline-block}.teaching-gallery-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:23px;display:flex}.teaching-gallery-heading h3{margin:0;font-size:30px}.teaching-gallery-heading>span{letter-spacing:1.4px;color:var(--muted);font-size:11px}.course-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.course-card{border:1px solid var(--line);background:#181914;min-width:0}.course-card>img{aspect-ratio:16/9;object-fit:contain;background:#101110;width:100%;height:auto;display:block}.course-card>div{padding:19px 20px}.course-card h4{margin:0 0 7px;font-size:17px;font-weight:600}.course-card p{margin:0;font-size:14px}.course-card:hover{border-color:#736432}@media (max-width:1000px){header nav{gap:15px}.teaching-intro{gap:18px}.channel-panel,.instructor-panel{padding:24px}.course-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.teaching-gallery-heading>span{display:none}}@media (max-width:700px){.teaching-intro{grid-template-columns:1fr}.teaching-logo{max-width:330px}.course-grid{grid-template-columns:1fr}.course-card>div{padding:18px}.course-card>img{aspect-ratio:auto}.instructor-panel h3{font-size:36px}.channel-meta strong{font-size:40px}}
