:root{--paper:#F4F0E7;--ink:#183B33;--clay:#B75E48;--pollen:#E3B767;--sage:#B7C8B2;--line:rgba(24,59,51,.18)}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:var(--paper);color:var(--ink);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif} a{color:inherit;text-decoration:none} .shell{max-width:1240px;margin:auto;padding:0 34px} .nav{display:flex;align-items:center;justify-content:space-between;padding:22px 0;position:relative;z-index:5} .brand{font-family:Georgia,serif;font-size:19px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);white-space:nowrap;transition:opacity .2s} .brand:hover{opacity:.6} .nav-links{display:flex;align-items:center;gap:23px;font-size:14px} .nav-contact{border:1px solid var(--ink);padding:10px 14px;border-radius:999px} .hero{display:grid;grid-template-columns:1.1fr .9fr;gap:68px;align-items:center;padding:72px 0 98px;min-height:640px} .eyebrow{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#486A5D;margin-bottom:24px} h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(52px,6vw,88px);font-weight:400;line-height:.98;letter-spacing:-.055em;margin:0 0 28px;max-width:750px} .hero h1 em{color:var(--clay);font-weight:400} .hero p{font-size:20px;line-height:1.55;max-width:630px;margin:0 0 30px;color:#31584E} .actions{display:flex;flex-wrap:wrap;gap:12px} .btn{display:inline-flex;align-items:center;gap:9px;padding:14px 19px;border-radius:999px;font-size:15px;font-weight:600} .btn-primary{background:var(--ink);color:var(--paper)} .btn-secondary{border:1px solid var(--ink)} .portrait{position:relative;aspect-ratio:5/6;overflow:hidden;border-radius:220px 220px 12px 12px;background:var(--sage);box-shadow:20px 20px 0 var(--pollen)} .portrait svg{width:100%;height:100%;display:block} .leaf{position:absolute;left:-33px;bottom:50px;width:115px;opacity:.85} .leaf path{fill:none;stroke:var(--clay);stroke-width:3} .portrait-photo{width:100%;height:100%;object-fit:cover;display:block}.photo-portrait .leaf{width:92px;height:auto;left:-30px;bottom:48px;pointer-events:none}.photo-portrait:after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(24,59,51,.16);pointer-events:none}.photo-sunlit .leaf{opacity:.72}.photo-soft{border-radius:42px 42px 12px 12px;box-shadow:18px 18px 0 var(--sage)}.photo-soft .leaf{opacity:.58}.photo-clean{box-shadow:20px 20px 0 #E9C8AF}.photo-clean .leaf{opacity:.64} .intro{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:37px 0;display:grid;grid-template-columns:180px 1fr;gap:35px} .intro h2{font-family:Georgia,serif;font-weight:400;font-size:20px;margin:0} .intro p{font-family:Georgia,serif;font-size:29px;line-height:1.22;letter-spacing:-.025em;margin:0;max-width:920px} section{padding:105px 0} .section-heading{display:flex;align-items:baseline;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:17px;margin-bottom:37px} .section-heading span{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#486A5D} .section-heading h2{font-family:Georgia,serif;font-size:39px;letter-spacing:-.035em;font-weight:400;margin:0} .pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:20px} .pillar{min-height:278px;background:#EBE2D4;padding:26px;border-radius:15px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden} .pillar:nth-child(2){background:#D8E2D2} .pillar:nth-child(3){background:#E9C8AF} .pillar .no{font:14px Georgia,serif} .pillar h3{font:400 32px/1 Georgia,serif;letter-spacing:-.035em;margin:25px 0 12px} .pillar p{font-size:15px;line-height:1.5;margin:0;max-width:310px} .work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px} .work-card{border:1px solid var(--line);border-radius:14px;padding:28px;min-height:245px;background:rgba(255,255,255,.18);display:flex;flex-direction:column;justify-content:space-between} .work-card.large{background:var(--ink);color:var(--paper);min-height:245px} .work-card .kicker{font-size:12px;letter-spacing:.13em;text-transform:uppercase;color:#6B8F7D} .work-card.large .kicker{color:#C5D7BC} .work-card h3{font:400 43px/1 Georgia,serif;letter-spacing:-.05em;margin:30px 0 12px;max-width:520px} .work-card:not(.large) h3{font-size:30px;margin:20px 0 8px} .work-card p{font-size:15px;line-height:1.55;margin:0;max-width:540px} .work-card .tag{font-size:13px;margin-top:26px} .side-stack{display:contents} .approach{background:var(--sage);margin:0 calc(50% - 50vw);padding:98px max(34px,calc((100vw - 1240px)/2 + 34px))} .approach-inner{display:grid;grid-template-columns:.84fr 1.16fr;gap:70px} .approach h2{font:400 52px/1.04 Georgia,serif;letter-spacing:-.05em;margin:0} .approach p{font:400 26px/1.28 Georgia,serif;letter-spacing:-.025em;margin:0 0 30px} .principles{border-top:1px solid var(--line)} .principle{display:grid;grid-template-columns:45px 1fr;gap:15px;padding:17px 0;border-bottom:1px solid var(--line);font-size:17px} .principle b{font:400 17px Georgia,serif;color:var(--clay)} .about-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:70px;align-items:start} .about-note{font:400 35px/1.12 Georgia,serif;letter-spacing:-.04em;margin:0} .interests{display:grid;grid-template-columns:repeat(2,1fr);gap:12px} .interest{border-top:1px solid var(--line);padding:15px 0;min-height:110px} .interest b{display:block;font-size:14px;margin-bottom:8px} .interest span{font-family:Georgia,serif;font-size:19px;line-height:1.15} .contact{background:var(--clay);color:#FFF6EA;margin:0 calc(50% - 50vw);padding:100px max(34px,calc((100vw - 1240px)/2 + 34px)) 44px} .contact h2{font:400 clamp(50px,6vw,84px)/.95 Georgia,serif;letter-spacing:-.06em;max-width:850px;margin:0 0 30px} .contact .btn{background:#FFF6EA;color:var(--clay)} .contact-bottom{margin-top:100px;display:flex;justify-content:space-between;align-items:end;font-size:14px;opacity:.9} .contact-bottom a{text-decoration:underline;text-underline-offset:4px} @media(max-width:780px){.shell{padding:0 20px}.nav-links a:not(.nav-contact){display:none}.hero{grid-template-columns:1fr;padding:42px 0 70px;gap:35px}.portrait{max-width:440px;width:90%;justify-self:center}.intro,.approach-inner,.about-grid{grid-template-columns:1fr;gap:25px}.pillars,.work-grid{grid-template-columns:1fr}.section-heading h2{font-size:34px}section{padding:75px 0}.approach{padding:75px 20px}.contact{padding:75px 20px 35px}.contact-bottom{margin-top:70px;gap:18px;flex-wrap:wrap}}
