@charset "UTF-8";
:root{--paper:#f4f1e9;--paper-light:#fbfaf6;--ink:#20342e;--muted:#626b63;--line:#d9ddd1;--accent:#ad4d25;--dark:#1b302a;--dark-muted:#b4c1b8;--radius:24px;--max:1240px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:104px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.65}
img{display:block;width:100%;height:auto}a{color:inherit;text-decoration:none}button{font:inherit}::selection{background:#dfba91;color:#172922}
:focus-visible{outline:3px solid var(--accent);outline-offset:5px;border-radius:3px}
.skip-link{position:fixed;z-index:30;left:20px;top:-100px;background:var(--ink);color:white;padding:12px 20px}.skip-link:focus{top:15px}
.container{width:min(var(--max),calc(100% - 80px));margin:0 auto}
.header{position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(32,52,46,.1);background:rgba(244,241,233,.96);backdrop-filter:blur(12px)}
.header-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:12px;font-size:14px;line-height:1.3;font-weight:700;white-space:nowrap}.brand-mark{width:40px;height:40px;border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center;font-family:Georgia,serif;font-size:17px;letter-spacing:-2px;padding-right:2px}
.header-nav{display:flex;gap:30px;font-size:13px}.header-nav a,.language a{transition:color .2s}.header-nav a:hover{color:var(--accent)}
.header-actions{display:flex;align-items:center;gap:24px}.language{display:flex;gap:12px;font-size:11px;font-weight:700;letter-spacing:.04em}.language a{padding:5px 0;color:var(--muted)}.language a[aria-current]{color:var(--ink);border-bottom:1px solid var(--ink)}.language a:hover{color:var(--accent)}
.header-social{display:flex;gap:8px;align-items:center;font-size:12px;font-weight:700}.icon{width:18px;height:18px;display:inline-block;flex:0 0 auto;vertical-align:middle}
.hero{padding:62px 0 75px;position:relative}.hero-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:74px;align-items:center}
.eyebrow{display:flex;align-items:center;gap:10px;text-transform:uppercase;font-size:10px;line-height:1.5;font-weight:700;letter-spacing:.18em;color:var(--accent);margin:0 0 28px}.eyebrow::before{content:"";height:1px;width:30px;background:currentColor;flex:0 0 auto}
.hero h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(56px,6.6vw,86px);line-height:1.04;letter-spacing:-.055em;margin:0 0 24px;text-wrap:balance}.hero h1 span{display:block}
.hero-subtitle{font-size:clamp(20px,2.25vw,28px);line-height:1.35;letter-spacing:-.025em;font-weight:400;margin:0 0 20px;max-width:460px}
.hero-intro{font-size:15px;color:var(--muted);max-width:465px;margin:0 0 31px}.hero-intro p{margin:0 0 10px}
.button{display:inline-flex;gap:14px;align-items:center;justify-content:center;padding:16px 23px;background:var(--ink);color:var(--paper-light);border:1px solid var(--ink);border-radius:8px;font-weight:700;font-size:13px;line-height:1.5;transition:background .2s,transform .2s;min-height:52px}.button:hover{background:#304b41;transform:translateY(-2px)}.button .icon{width:17px;height:17px}
.hero-links{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.text-link{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:700;border-bottom:1px solid var(--line);padding:8px 0}.text-link:hover{color:var(--accent);border-color:var(--accent)}
.hero-note{margin:32px 0 0;font-size:11px;color:var(--muted);display:flex;align-items:center;gap:8px}.dot{height:6px;width:6px;flex:0 0 auto;border-radius:50%;background:var(--accent)}
.portrait-wrap{position:relative;padding:16px;background:#e5e6db;border-radius:var(--radius);border:1px solid #d8dece}.portrait{width:100%;aspect-ratio:4/4.9;object-fit:cover;object-position:center;border-radius:14px;background:#bdc2b5}.portrait-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:13px 2px 0;font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:#46584c}.portrait-caption .portrait-name{font-weight:700}.image-label{position:absolute;bottom:82px;left:-26px;background:var(--paper-light);border:1px solid var(--line);border-radius:12px;padding:17px 21px;box-shadow:0 5px 30px rgba(26,43,31,.08);display:flex;align-items:center;gap:13px}.image-label-icon{display:grid;place-items:center;width:34px;height:34px;background:#efe7d8;color:var(--accent);border-radius:50%;font-size:17px}.image-label strong{display:block;font-size:12px;line-height:1.45}.image-label small{font-size:10px;color:var(--muted)}
.intro-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:23px 0;display:flex;gap:20px;align-items:center;justify-content:space-between}.intro-strip-label{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}.topic-list{display:flex;flex-wrap:wrap;gap:36px;font-size:12px;font-weight:700}.topic-list span{display:flex;align-items:center;gap:10px}.topic-list span::before{content:"+";font-size:17px;font-weight:400;color:var(--accent)}
.section{padding:72px 0}#about{border-top:1px solid var(--line)}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:38px}.section-index{font-size:10px;letter-spacing:.16em;color:var(--accent);text-transform:uppercase;margin:0 0 14px}.section h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(34px,4.6vw,52px);line-height:1.15;letter-spacing:-.035em;margin:0;text-wrap:balance}.section-kicker{max-width:330px;font-size:13px;color:var(--muted);margin:0}
.about-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:90px;align-items:start}.about-grid .section-heading{display:block;margin:0}.about-copy{font-size:16px;max-width:670px}.about-copy p{margin:0 0 18px}.about-copy p:first-child{font-size:21px;line-height:1.55;letter-spacing:-.02em}.about-copy a{border-bottom:1px solid var(--line)}.about-copy a:hover{color:var(--accent)}.about-details{display:flex;flex-wrap:wrap;gap:8px;margin:25px 0 0}.tag{font-size:10px;letter-spacing:.035em;line-height:1.5;border:1px solid var(--line);border-radius:30px;padding:7px 12px;color:#59685d}
.life-photo{display:grid;grid-template-columns:1.2fr .8fr;gap:50px;align-items:end;padding-top:49px;margin-top:46px;border-top:1px solid var(--line)}.life-photo img{max-height:490px;aspect-ratio:1.55;object-fit:cover;object-position:center 40%;border-radius:16px}.life-photo p{font-size:21px;font-family:Georgia,serif;line-height:1.45;max-width:320px;margin:0 0 14px}
.project-section{background:var(--dark);color:var(--paper-light);padding:80px 0 88px}.project-section .section-index{color:#d7965b}.project-section .section-kicker{color:var(--dark-muted)}.project-card{display:grid;grid-template-columns:1.06fr .94fr;border:1px solid #40574a;border-radius:var(--radius);overflow:hidden;margin-top:36px;background:#223b31}.project-media{display:flex;align-items:center;padding:22px;background:#e5e6dc;min-height:520px}.project-media img{aspect-ratio:1.04;object-fit:contain;max-height:540px;mix-blend-mode:multiply;border-radius:12px}.project-content{padding:42px 40px;display:flex;flex-direction:column;justify-content:center}.status{display:inline-flex;align-items:center;gap:8px;color:#e0bc8e;font-size:10px;letter-spacing:.08em;text-transform:uppercase;margin:0 0 19px}.status .dot{background:#dc9c59}.project-content h3{font-family:Georgia,serif;font-size:clamp(34px,3.8vw,48px);font-weight:400;letter-spacing:-.035em;line-height:1.1;margin:0 0 17px}.project-description{font-size:13px;line-height:1.7;color:#d6dfd5;margin:0 0 18px}.project-features{list-style:none;padding:0;margin:0 0 24px;border-top:1px solid #4b5f50}.project-features li{display:flex;gap:13px;padding:12px 0;border-bottom:1px solid #4b5f50;font-size:12px;line-height:1.6;color:#d4ded1}.project-features li::before{content:"↗";color:#d89b67;font-size:15px}.project-plans{font-size:11px;color:var(--dark-muted);line-height:1.75;margin:0 0 26px}.project-section .button{background:var(--paper-light);color:var(--ink);border-color:var(--paper-light);align-self:flex-start}.project-section .button:hover{background:#ece6d8}.project-section .tag{border-color:#58705e;color:#c2cdbf}.project-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:22px}.project-meta{display:flex;justify-content:space-between;gap:25px;padding:20px 3px 0;font-size:10px;color:var(--dark-muted)}
.study-section{border-bottom:1px solid var(--line)}.study-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.study-card{border:1px solid var(--line);border-radius:16px;padding:31px 32px;background:#f9f7f1;display:flex;flex-direction:column;align-items:flex-start}.card-label{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.13em;color:var(--accent);margin:0 0 17px}.study-card h3{font-family:Georgia,serif;font-size:28px;font-weight:400;line-height:1.3;letter-spacing:-.025em;margin:0 0 14px}.study-card p{font-size:13px;color:var(--muted);margin:0 0 22px;max-width:460px}.study-card .text-link{margin-top:auto}.study-date{font-size:10px;color:var(--muted);margin-bottom:17px}
.contact{padding:80px 0 94px}.contact-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:80px;align-items:center}.contact h2{font-size:clamp(39px,5.3vw,66px);max-width:680px}.contact p{font-size:14px;color:var(--muted);max-width:590px;margin:23px 0 0}.contact-links{display:flex;flex-direction:column;gap:12px}.contact-links .button{justify-content:space-between}.contact-language-links{display:flex;justify-content:space-between;gap:13px;padding:14px 3px 0;font-size:11px;font-weight:700}.contact-language-links a{display:inline-flex;gap:6px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:5px}.contact-language-links a:hover{color:var(--accent)}
.footer{border-top:1px solid var(--line);padding:25px 0;font-size:10px;color:var(--muted)}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:25px}.footer-name{color:var(--ink);font-size:11px;font-weight:700}.footer-note{max-width:460px;text-align:right}
.reveal{animation:appear .75s ease both}.reveal-delay{animation-delay:.15s}@keyframes appear{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1600px){:root{--max:1320px}.hero-grid{gap:95px}.hero{padding-top:85px}.hero h1{font-size:92px}}
@media(max-width:1100px){.container{width:calc(100% - 56px)}.header-nav{gap:19px}.header-actions{gap:15px}.hero-grid{gap:45px}.hero h1{font-size:66px}.hero-subtitle{font-size:23px}.project-content{padding:32px 27px}.project-media{min-height:490px}.about-grid{gap:60px}.contact-grid{gap:45px}.topic-list{gap:23px}}
@media(max-width:880px){.header-inner{min-height:80px;flex-wrap:wrap;padding:15px 0;gap:14px}.header-nav{order:3;width:100%;justify-content:center;padding-top:4px;font-size:11px;gap:28px}.brand{font-size:12px}.brand-mark{width:34px;height:34px;font-size:15px}.header-social{font-size:11px}.hero{padding:42px 0 48px}.hero-grid{gap:35px}.hero h1{font-size:55px}.hero-subtitle{font-size:20px}.hero-intro{font-size:13px}.hero-links{gap:14px}.hero-links .text-link{font-size:10px}.button{font-size:11px;padding:14px 18px;gap:10px}.portrait-wrap{padding:12px}.portrait{aspect-ratio:4/5.55}.image-label{bottom:63px;left:-18px;padding:12px 15px}.image-label strong{font-size:10px}.image-label small{font-size:9px}.portrait-caption{font-size:8px}.section{padding:70px 0}.about-grid{gap:37px;grid-template-columns:.7fr 1.3fr}.about-copy{font-size:14px}.about-copy p:first-child{font-size:18px}.project-card{grid-template-columns:1fr}.project-media{min-height:0;padding:26px}.project-media img{aspect-ratio:1.6;max-height:420px;object-fit:contain}.project-content{padding:33px}.project-description{max-width:590px}.project-features{display:grid;grid-template-columns:1fr 1fr;column-gap:24px}.project-features li{font-size:11px}.project-plans{max-width:540px}.contact-grid{grid-template-columns:1.15fr .85fr;gap:30px}.contact h2{font-size:44px}.topic-list{gap:17px;font-size:10px}.intro-strip-label{font-size:8px}.study-card{padding:26px}.study-card h3{font-size:23px}}
@media(max-width:640px){html{scroll-padding-top:128px}.container{width:calc(100% - 36px)}.header-inner{gap:10px;min-height:94px;padding:13px 0}.brand{max-width:160px;font-size:11px;gap:8px;white-space:normal}.brand-mark{width:32px;flex:0 0 32px;height:32px}.header-actions{gap:16px}.language{gap:10px;font-size:10px}.header-social{font-size:0;gap:0}.header-social .icon{width:21px;height:21px}.header-nav{gap:26px;font-size:10px;margin-top:3px;justify-content:flex-start;padding-left:0}.hero{padding:37px 0 37px}.hero-grid{display:flex;flex-direction:column;gap:35px;align-items:stretch}.eyebrow{font-size:8px;letter-spacing:.14em;margin-bottom:22px}.hero h1{font-size:clamp(55px,14vw,78px);margin-bottom:22px;line-height:1.02}.hero h1 span{display:inline}.hero h1 span + span::before{content:" "}.hero-subtitle{font-size:22px;max-width:350px;margin-bottom:17px}.hero-intro{font-size:13px;max-width:430px;margin-bottom:25px}.hero-links{gap:19px}.button{font-size:12px;padding:15px 19px}.hero-note{font-size:10px;margin-top:22px}.portrait-wrap{margin:0 0 0 12px;padding:12px}.portrait{aspect-ratio:1.03;object-position:center 30%;border-radius:11px}.portrait-caption{font-size:9px}.image-label{left:-24px;bottom:61px;padding:13px 18px}.image-label strong{font-size:11px}.image-label small{font-size:10px}.image-label-icon{width:30px;height:30px;font-size:15px}.intro-strip{padding:20px 0;display:block}.intro-strip-label{font-size:8px;margin-bottom:11px;display:block}.topic-list{gap:10px 19px;font-size:10px}.topic-list span{gap:7px}.section{padding:60px 0}.section h2{font-size:36px}.section-heading{display:block;margin-bottom:28px}.section-kicker{margin-top:15px;font-size:12px}.section-index{font-size:9px;margin-bottom:11px}.about-grid{display:block}.about-grid .section-heading{margin-bottom:27px}.about-copy p:first-child{font-size:19px;line-height:1.5}.about-copy{font-size:14px}.about-details{margin-top:20px}.tag{font-size:9px;padding:6px 10px}.life-photo{display:block;padding-top:26px;margin-top:28px}.life-photo img{aspect-ratio:1.28;max-height:390px}.life-photo p{font-size:19px;margin:23px 0 0;max-width:100%}.project-section{padding:57px 0 61px}.project-card{margin-top:27px;border-radius:16px}.project-media{padding:15px}.project-media img{aspect-ratio:1.15;max-height:370px}.project-content{padding:25px 22px 29px}.project-content h3{font-size:37px}.project-description{font-size:12px}.project-features{display:block}.project-features li{font-size:11px;padding:11px 0}.project-plans{font-size:10px}.project-content .button{font-size:11px}.project-meta{display:block;padding-top:17px;font-size:9px}.project-meta span{display:block}.project-meta span+span{margin-top:7px}.study-grid{grid-template-columns:1fr;gap:14px}.study-card{padding:25px 24px}.study-card h3{font-size:26px}.study-card p{font-size:12px;margin-bottom:18px}.card-label{font-size:8px;margin-bottom:14px}.contact{padding:61px 0}.contact-grid{display:block}.contact h2{font-size:42px}.contact p{font-size:13px;margin-top:21px}.contact-links{margin-top:30px;max-width:430px}.contact-links .button{font-size:13px}.contact-language-links{justify-content:flex-start;gap:26px;padding-top:10px}.footer{padding:22px 0}.footer-inner{display:block}.footer-note{text-align:left;font-size:9px;margin-top:11px;max-width:400px}.footer-name{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{animation:none}*,*::before,*::after{transition:none!important}}
