/* Shared family: Kyle's Applied AI portfolio and Compass Suite. */
:root{--paper:#f4f2e9;--ink:#332c2a;--text:#332c2a;--muted:#685b55;--soft:#e9dfd6;--line:#d7cec7;--accent:#8b4934;--focus:#9b4e35;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;background:var(--paper)}
body{-webkit-font-smoothing:antialiased;overflow-wrap:break-word}
main,.portfolio-header,footer{max-width:1320px;margin-inline:auto;padding-inline:40px}
h1,h2,h3{font-family:inherit;font-weight:500}
h1{font-size:clamp(48px,4.65vw,67px);line-height:1.06;letter-spacing:-.05em}
h1 em,h2 em{font-family:Georgia,'Times New Roman',serif;font-weight:400}
h2{font-size:clamp(34px,3.6vw,52px)}
.portfolio-header{color:#192b25}.portfolio-masthead{min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.wordmark{display:inline-flex;align-items:center;gap:10px;font-size:26px;font-weight:600;letter-spacing:-.075em;text-decoration:none;min-height:44px}
.wordmark img{width:37px;height:37px;object-fit:contain}.nav-contact{display:inline-flex;align-items:center;gap:24px;font-size:14px;text-decoration:none;min-height:44px;border-bottom:1px solid currentColor}
.network-nav{display:flex;align-items:center;gap:32px;border-block:1px solid #cdd1c4;padding:6px 0}
.network-nav a{display:inline-flex;align-items:center;min-height:44px;position:relative;text-decoration:none;font-size:14px;color:#58645d}
.network-nav a[aria-current]{font-weight:600;color:#192b25}.network-nav a[aria-current]::after{content:'';position:absolute;bottom:-7px;left:0;right:0;height:2px;background:currentColor}
.network-nav a:hover,.wordmark:hover{text-decoration:underline}
.intro{grid-template-columns:1.03fr 1fr;gap:58px;align-items:center;padding:70px 0 66px}
.intro-copy{min-width:0}.kicker{font-size:11px;letter-spacing:.13em;display:flex;align-items:center;gap:10px}.kicker::before{content:'';width:7px;height:7px;border-radius:50%;background:var(--accent);flex-shrink:0}
.dek{font-size:18px;line-height:1.65;color:var(--muted);max-width:47ch;margin-top:25px}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;min-height:52px;padding:12px 22px;border:1px solid var(--ink);border-radius:30px;text-decoration:none;font-size:13px;margin-top:12px}
.button.primary{background:var(--ink);color:var(--paper)}.button.primary:hover{background:var(--accent)}.intro-credit{font-size:11px;letter-spacing:.025em;color:var(--muted);margin:28px 0 0}
.hero-evolution{position:relative;isolation:isolate;background:#e8d8cf;border:1px solid #e0d1c7;border-radius:28px 28px 76px 28px;padding:26px 30px 22px;box-shadow:0 16px 42px #192b2510}
.hero-evolution>.label{font-size:10px;letter-spacing:.11em;color:var(--ink);margin:0 0 20px}.hero-evolution figure{background:var(--paper);border:1px solid #d0c4b8;box-shadow:0 8px 20px #332c2a12}
.hero-evolution img{display:block;width:100%;height:auto;max-height:170px;object-fit:cover;object-position:top}.hero-before{width:78%;position:relative;z-index:1}.hero-after{width:87%;margin:14px 0 0 auto;position:relative;z-index:2}.hero-after img{max-height:195px}
.hero-evolution figcaption{padding:9px 12px;font-size:10px;line-height:1.4;color:var(--ink)}.hero-evolution figcaption span{display:inline;font-weight:700;color:var(--accent);margin-right:10px}.hero-source{font-size:10px;color:var(--muted);margin:17px 0 0}
.journey-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;border-block:1px solid var(--line);padding:25px 0}.journey-strip a{text-decoration:none;min-height:44px}.journey-strip span{display:block;font-size:10px;color:var(--accent);letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px}.journey-strip strong{font-size:15px;font-weight:500}.journey-strip a:hover strong{text-decoration:underline}
.chapters{border-top:0;border-bottom:0;justify-content:flex-start;gap:30px;padding:15px 0;color:var(--muted)}.chapters a{min-height:44px;display:flex;align-items:center}
.chapter{padding:82px 0}.section-heading{gap:0 65px}.section-heading>p:last-child{color:var(--muted);font-size:17px}.number{font-size:11px;letter-spacing:.13em}
.viewer{border-radius:20px;overflow:hidden;background:#e9dfd6}.viewer-tools{background:var(--paper)}.stage-controls button{background:var(--paper)}.stage-controls button:hover:not([aria-pressed=true]){background:#e9dfd6}.stage-controls button[aria-pressed=true]{color:var(--paper);background:var(--ink);border-bottom-color:var(--accent)}
.screen{background:white;border:1px solid #cfc3b9;box-shadow:0 8px 22px #332c2a12}.reading{background:var(--paper)}.reading>span{color:var(--accent)}
.archive-note{background:#ebe5da;border-top-color:var(--accent)}.archive-note h3,.skill-growth>h3{font-family:inherit;font-weight:500}.stat{border-color:var(--accent)}.stat>strong{font-family:Georgia,serif}.suite-strip img,.portfolio-figure img{border-radius:12px}.text-link{font-size:13px;font-weight:500;text-decoration:none;border-bottom:1px solid var(--ink);gap:30px}
.insight-list{list-style:none;padding:0;counter-reset:lessons}.insight-list li{counter-increment:lessons;border-top:1px solid var(--line);padding:20px 0 20px 40px;position:relative;font-size:15px;line-height:1.6}.insight-list li::before{content:'0' counter(lessons);position:absolute;left:0;top:22px;font-family:Georgia,serif;color:var(--accent);font-size:17px}.insight-list strong{display:block;font-size:19px;font-weight:500;margin-bottom:6px;letter-spacing:-.025em}
.method-note{color:var(--muted)}.next-step{padding:45px;background:var(--ink);color:var(--paper);border-radius:22px;margin:55px 0 0}.next-step h3{color:inherit;font-size:34px;max-width:24ch}.next-step p{color:#ddd1c9;max-width:62ch;font-size:16px}.next-step .text-link{border-color:#c4b3a8;margin-right:30px;color:inherit}
footer{padding-top:36px;padding-bottom:45px}footer span{font-size:12px}footer nav{display:flex;gap:24px;flex-wrap:wrap;margin:24px 0;font-size:13px}
@media(max-width:1050px){.intro{gap:30px}.intro h1{font-size:53px}.hero-evolution{padding:24px}.hero-evolution img{max-height:160px}.hero-after img{max-height:180px}.network-nav{gap:23px}.journey-strip{gap:18px}.chapters{gap:22px}}
@media(max-width:760px){main,.portfolio-header,footer{padding-inline:24px}.portfolio-masthead{min-height:80px}.wordmark{font-size:24px}.wordmark img{width:32px;height:32px}.nav-contact{font-size:12px;gap:12px}.network-nav{flex-wrap:wrap;gap:0 21px;padding:7px 0}.network-nav a{font-size:12px;min-height:38px}.network-nav a[aria-current]::after{bottom:0}.intro{grid-template-columns:1fr;gap:32px;padding:42px 0 35px}.intro h1{font-size:clamp(45px,10.5vw,62px)}.intro h1 br:last-child{display:none}.dek{font-size:17px;max-width:42ch}.intro-credit{margin-top:22px}.hero-evolution{max-width:520px;width:100%;justify-self:center;border-radius:22px 22px 55px 22px}.hero-evolution img{max-height:155px}.hero-after img{max-height:175px}.journey-strip{grid-template-columns:1fr 1fr;gap:22px;padding:23px 0}.journey-strip strong{font-size:13px}.chapters{gap:0 21px;padding:10px 0}.chapter{padding:46px 0}.section-heading{gap:0 30px}.section-heading>p:last-child{font-size:16px}.viewer{border-radius:12px}.stage-controls button{font-size:12px}.origin,.effort-grid,.suite-strip,.practice-grid,.evidence-grid{display:block}.evidence-grid>div+div{margin-top:30px}.growth-list{display:block}.next-step{padding:28px;margin-top:35px}.next-step h3{font-size:29px}.next-step .text-link{margin:0 18px 7px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
