/* Immersive landscape scenes with a readable, translucent information layer. */
:root{--ocean:url('assets/landscape-coastline-clay.webp');--alpine:url('assets/landscape-moraine-clay.webp');--glass:rgba(246,242,234,.76);--ink:#39352f;--muted:#4E463E}
body.portfolio-home{background:#8C98A0}
.site-header{position:relative;z-index:5;margin:18px auto;padding:13px 22px;border:1px solid rgba(255,255,255,.55);border-radius:24px;background:rgba(240,234,223,.78);box-shadow:0 8px 30px rgba(30,38,39,.1);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}
.site-header nav{gap:7px}
.site-header nav a{padding:11px 14px;border-radius:30px;min-height:44px;display:inline-flex;align-items:center;gap:10px}
.site-header nav a:hover{background:rgba(255,255,255,.5)}
.site-header .seal{border-radius:50%;width:38px;height:38px;font-size:30px;background:rgba(78,70,62,.83)}
.portfolio-home #main>.intro{padding-top:34px;padding-bottom:72px}
.portfolio-home #main>.intro::before{top:-110px;background:linear-gradient(180deg,rgba(26,43,49,.08),rgba(26,43,49,.2)),var(--alpine) center/cover no-repeat}
.portfolio-home .intro-top{margin-bottom:30px}
.portfolio-home .intro-top .eyebrow{color:#fff8ef;text-shadow:0 1px 8px rgba(0,0,0,.7)}
.portfolio-home .intro-grid{gap:30px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}
.portfolio-home .intro-copy,.portfolio-home .current-role{padding:34px;border:1px solid rgba(255,255,255,.65);border-radius:28px;background:linear-gradient(140deg,rgba(247,242,231,.8),rgba(235,230,220,.64));box-shadow:0 18px 48px rgba(20,38,43,.15),inset 0 1px 0 rgba(255,255,255,.6);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}
.portfolio-home .intro h1{font-size:clamp(64px,7.5vw,108px);margin-bottom:28px}
.portfolio-home .intro-description{max-width:440px;color:#39352f}
.portfolio-home .current-role h2{font-size:clamp(30px,3.2vw,44px)}
.portfolio-home .role-description p,.portfolio-home .role-meta,.portfolio-home .role-employer{color:#39352f}
.portfolio-home #main>.education-front{padding:58px 30px;border:0}
.portfolio-home #main>.education-front::before{background:linear-gradient(rgba(220,207,190,.68),rgba(220,207,190,.82)),var(--alpine) center 45%/cover no-repeat}
.portfolio-home #work>.section-heading{padding:46px 0}
.portfolio-home #work>.section-heading::before{background:#DCCFBE}
.portfolio-home .project-band{padding:84px 0}
.portfolio-home .project-band::before{background:linear-gradient(100deg,rgba(23,40,46,.1),rgba(23,40,46,.22)),var(--scene) center/cover no-repeat}
.portfolio-home .project-band:nth-child(even){--scene:var(--ocean)}
.portfolio-home .project-band:nth-child(odd){--scene:var(--alpine)}
.portfolio-home .project-band>.portfolio-row{width:calc(100% - 44px);margin:auto;padding:32px;border-radius:26px;border:1px solid rgba(255,255,255,.64);background:linear-gradient(120deg,rgba(249,245,236,.8),rgba(235,232,223,.66));box-shadow:0 24px 64px rgba(18,31,36,.2),inset 0 1px 0 rgba(255,255,255,.7);-webkit-backdrop-filter:blur(20px) saturate(110%);backdrop-filter:blur(20px) saturate(110%)}
.portfolio-home .project-kicker,.portfolio-home .project-summary-text,.portfolio-home .project-details p,.portfolio-home .project-figure figcaption{color:#39352f}
.portfolio-home .map-plate{background:rgba(249,247,241,.2);border:1px solid rgba(255,255,255,.42);border-radius:16px;padding:12px}
.portfolio-home .map-switches{padding-bottom:8px}
.portfolio-home .map-switches button{padding:10px 12px;border-radius:20px;background:rgba(255,255,255,.35);color:#39352f;min-height:40px}
.portfolio-home .map-switches button[aria-pressed=true]{background:rgba(78,70,62,.9);color:#fff8ee;border-color:transparent}
.map-expand-label{min-height:40px;display:flex;align-items:center;gap:8px}
.portfolio-home #archive{padding:48px 30px 58px;border-radius:24px;isolation:isolate}
.portfolio-home #archive::before{background:linear-gradient(rgba(41,48,47,.9),rgba(42,48,47,.92)),var(--alpine) center/cover no-repeat}
.map-dialog{max-width:94vw;width:1280px;max-height:90dvh;border-radius:24px;background:rgba(242,237,226,.85);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}
.map-dialog::backdrop{background:rgba(25,36,39,.45);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.map-dialog-tools button{border-radius:30px;min-width:44px;min-height:44px}
body:not(.portfolio-home):not(.reader-body){background:linear-gradient(rgba(232,226,215,.9),rgba(232,226,215,.94)),var(--alpine) center/cover fixed}
.study-hero,.study-gallery a{background:rgba(247,242,234,.64);border-radius:18px;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}
body.reader-body{background:linear-gradient(rgba(45,58,63,.25),rgba(45,58,63,.4)),var(--ocean) center/cover fixed}
.reader-instruction,.reader-status{color:#fff8ef;text-shadow:0 1px 5px #1d3038}
.reader-header{background:rgba(242,237,226,.88);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}
.reader-toolbar{border-radius:30px}
@media(max-width:1000px){.portfolio-home .intro-copy,.portfolio-home .current-role{padding:26px}.site-header nav a{padding:10px}.portfolio-home .project-band>.portfolio-row{width:100%;padding:25px}}
@media(max-width:760px){.site-header{padding:12px 15px;margin:12px auto;border-radius:22px}.site-header nav{gap:4px;flex-wrap:wrap}.site-header nav a{padding:8px 11px;min-height:40px}.portfolio-home #main>.intro{padding-top:20px;padding-bottom:48px}.portfolio-home .intro-grid{grid-template-columns:1fr;gap:24px}.portfolio-home .intro-top{margin-bottom:24px}.portfolio-home .intro-copy,.portfolio-home .current-role{padding:26px 22px;border-radius:24px;background:rgba(244,239,229,.78);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.portfolio-home .intro h1{font-size:76px;line-height:.95}.portfolio-home .current-role h2{font-size:34px}.portfolio-home #main>.education-front{padding:36px 8px}.portfolio-home .project-band{padding:48px 0}.portfolio-home .project-band>.portfolio-row{width:100%;padding:24px 18px;border-radius:24px;gap:24px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.portfolio-home .project-band::before{background-position:60% center}.portfolio-home #archive{padding:35px 10px}.portfolio-home .map-switches button{font-size:10px;padding:9px 10px}.map-dialog{max-width:96vw;border-radius:20px}body:not(.portfolio-home):not(.reader-body),body.reader-body{background-attachment:scroll}.portfolio-home .intro-top .eyebrow:last-child{display:none}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.portfolio-home .project-band>.portfolio-row,.portfolio-home .intro-copy,.portfolio-home .current-role{background:rgba(242,237,226,.96)}}
@media(prefers-reduced-transparency:reduce){.portfolio-home .project-band>.portfolio-row,.portfolio-home .intro-copy,.portfolio-home .current-role,.site-header,.map-dialog,.reader-header{background:#eee7dc;-webkit-backdrop-filter:none;backdrop-filter:none}}
/* A compact two-row glass dock avoids narrow, vertically wrapped navigation. */
@media(max-width:680px){.site-header{display:flex;flex-direction:column;align-items:stretch;gap:8px;padding:14px 16px}.site-header .wordmark{align-self:flex-start}.site-header nav{display:flex;flex-direction:row;justify-content:space-between;flex-wrap:nowrap;gap:3px}.site-header nav a{padding:8px 10px;min-height:40px}.site-header .nav-contact{margin-left:0}.portfolio-home #main>.intro::before{top:-155px}}

/* Compact identity, quiet controls and a small, spring-like lift on desktop. */
.portfolio-home .intro h1{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',var(--sans);font-size:clamp(42px,4.5vw,58px);font-weight:600;letter-spacing:-.045em;line-height:1.12;margin-bottom:24px;text-wrap:balance}
.portfolio-home .intro h1 em{font-family:inherit;font-size:inherit;font-style:normal;font-weight:inherit;letter-spacing:inherit;color:inherit}
.portfolio-home .intro h1 br{display:none}
.portfolio-home .intro h1 em::before{content:' '}
.portfolio-home .intro-description{font-size:15px;line-height:1.75}
.portfolio-home .intro-copy,.portfolio-home .current-role{border-color:rgba(255,255,255,.5);box-shadow:0 12px 36px rgba(20,38,43,.12),inset 0 1px 0 rgba(255,255,255,.65)}
.portfolio-home .current-role h2{font-size:clamp(29px,2.8vw,38px);font-weight:500;line-height:1.12;letter-spacing:-.035em}
.portfolio-home .intro-links{gap:12px;flex-wrap:wrap;margin-top:28px}
.portfolio-home .intro-links .text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;padding:11px 18px;min-width:0;min-height:46px;font-size:14px;line-height:1.4;border:1px solid rgba(78,70,62,.22);border-radius:999px;background:rgba(255,255,255,.38);box-shadow:inset 0 1px 0 rgba(255,255,255,.55)}
.portfolio-home .intro-links .text-link:first-child{background:rgba(65,61,54,.94);border-color:transparent;color:#fffaf2;box-shadow:0 3px 10px rgba(29,37,35,.12)}
.portfolio-home .intro-links .text-link span{font-size:18px}
.portfolio-home .intro-links .text-link .link-arrow{width:16px;height:16px}
.portfolio-home .project-band>.portfolio-row{border-color:rgba(255,255,255,.52);box-shadow:0 16px 45px rgba(18,31,36,.16),inset 0 1px 0 rgba(255,255,255,.65)}
.portfolio-home :is(.intro-copy,.current-role,.project-band>.portfolio-row){transition:transform 360ms cubic-bezier(.22,1,.36,1),box-shadow 360ms cubic-bezier(.22,1,.36,1),border-color 220ms ease}
:is(.intro-links .text-link,.site-header nav a,.map-switches button,.map-dialog-tools button){transition:background-color 180ms ease,box-shadow 180ms ease,transform 220ms cubic-bezier(.22,1,.36,1)}
@media(hover:hover) and (pointer:fine){
 .portfolio-home :is(.intro-copy,.current-role,.project-band>.portfolio-row):hover{transform:translateY(-5px);border-color:rgba(255,255,255,.9);box-shadow:0 26px 58px rgba(18,31,36,.23),0 5px 15px rgba(18,31,36,.06),inset 0 1px 0 rgba(255,255,255,.85)}
 .portfolio-home .intro-links .text-link:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(29,37,35,.16)}
 .portfolio-home .intro-links .text-link:first-child:hover{background:#302e29;color:#fffaf2}
 .portfolio-home .intro-links .text-link:not(:first-child):hover{background:rgba(255,255,255,.64)}
 .portfolio-home .project-summary .text-link:hover .link-arrow{transform:translate(2px,-2px)}
}
.portfolio-home .project-summary .text-link .link-arrow{transition:transform 220ms cubic-bezier(.22,1,.36,1)}
.portfolio-home :is(.intro-copy,.current-role,.project-band>.portfolio-row):focus-within{border-color:rgba(255,255,255,.94);box-shadow:0 20px 48px rgba(18,31,36,.2),inset 0 1px 0 rgba(255,255,255,.85)}
.portfolio-home .intro-links .text-link:active{transform:translateY(0)}
@media(max-width:760px){.portfolio-home .intro h1{font-size:42px;line-height:1.15;margin-bottom:22px}.portfolio-home .intro h1 em{font-size:inherit}.portfolio-home .intro-copy{padding-top:28px}.portfolio-home .intro-links{gap:10px;margin-top:24px}.portfolio-home .intro-links .text-link{padding:11px 15px;gap:16px;font-size:13px;min-height:44px}.portfolio-home .intro-description{font-size:14px}.portfolio-home .current-role h2{font-size:30px}}
@media(prefers-reduced-motion:reduce){.portfolio-home :is(.intro-copy,.current-role,.project-band>.portfolio-row),.portfolio-home .intro-links .text-link,.portfolio-home .project-summary .text-link .link-arrow{transition:none!important;transform:none!important}}

/* Restore Rachel's original sans + italic serif name, at the compact scale. */
.portfolio-home .intro h1{font-family:var(--sans);font-weight:450}
.portfolio-home .intro h1 em{font-family:var(--serif);font-style:italic;font-weight:400;font-size:1.08em;line-height:inherit;letter-spacing:-.025em}
