:root{--paper:#eeece6;--ink:#23261e;--muted:#56574f;--green:#293223;--copper:#944c31;--line:#c9c7bd;--serif:Georgia,'Times New Roman',serif;--sans:'Helvetica Neue',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 var(--sans);-webkit-font-smoothing:antialiased}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.08;text-wrap:balance}h1{font-size:clamp(58px,6.8vw,106px);letter-spacing:-.055em}h2{font-size:clamp(34px,3.35vw,54px);letter-spacing:-.038em}h3{font-size:25px;letter-spacing:-.022em}p{margin:0 0 1.05em}p:last-child{margin-bottom:0}a{color:inherit;text-underline-offset:5px}img{display:block;width:100%;object-fit:cover}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--copper);outline-offset:5px}header{height:86px;padding:0 6%;display:flex;align-items:center;gap:34px;background:var(--paper);border-bottom:1px solid #d6d3c960;position:sticky;top:0;z-index:10}.brand{font:clamp(24px,2.1vw,32px)/1.1 var(--serif);text-decoration:none;letter-spacing:-.045em;white-space:nowrap}nav{display:flex;gap:27px;margin-left:auto;align-items:center}nav a{text-decoration:none;font-size:14px;padding:7px 0;white-space:nowrap}nav a:hover,nav a[aria-current]{border-bottom:1px solid var(--ink)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;border:1px solid var(--green);border-radius:2px;background:var(--green);color:var(--paper);font:14px/1.45 var(--sans);text-decoration:none;transition:background .2s,color .2s;max-width:100%;text-align:center}.button:hover{background:#414c38}.button.copper{background:var(--copper);border-color:var(--copper)}.button.copper:hover{background:#753e29}.button.outline{background:transparent;color:inherit;border-color:#96988d}.button.outline:hover{background:#d4d6cc44}.hero{min-height:650px;display:grid;grid-template-columns:51% 49%;position:relative;background:#e7e3db}.hero-copy{padding:50px 8% 48px 12%;position:relative;z-index:2;background:linear-gradient(90deg,#eeece6eb,#eeece6fa 85%,#eeece6d0)}.hero-copy:before{content:'';position:absolute;inset:0;z-index:-1;background:url('assets/limestone.webp') left center/cover;opacity:.11}.hero h1{margin-bottom:22px}.hero h2{font-family:var(--sans);font-size:clamp(22px,2.05vw,31px);line-height:1.2;letter-spacing:-.025em;max-width:540px;margin-bottom:28px}.hero .lead{font-size:20px;line-height:1.45;border-top:1px solid var(--line);padding-top:18px}.hero-copy>p:not(.lead){font-size:15px;line-height:1.55}.hero-copy .button{margin-top:8px}.hero-photo{position:relative;min-height:650px;overflow:hidden}.hero-photo img{height:100%;position:absolute;object-position:50% 35%}.image-quote{position:absolute;right:6%;bottom:8%;font:italic 24px/1.25 var(--serif);color:#fff;text-shadow:0 1px 8px #111}.section{padding:62px 6%}.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:30px;margin-bottom:34px}.text-link{font-size:14px;white-space:nowrap}.requests-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:32px 38px}.requests-grid img{width:75px;height:75px;border-radius:50%;margin-bottom:17px}.requests-grid p{font-size:15px;line-height:1.5}.approach{display:grid;grid-template-columns:1fr 1fr;min-height:510px}.landscape{position:relative;min-height:510px;color:#fff;overflow:hidden}.landscape>img{position:absolute;height:100%}.landscape:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#14221ddb,#14221d30)}.landscape>div{position:relative;z-index:1;padding:55px 12%;height:100%;display:flex;flex-direction:column;justify-content:space-between;gap:100px}.landscape p{max-width:390px;font-size:18px}.approach-copy{padding:35px 12% 30px 7%;background:#e3e0d6}details{border-bottom:1px solid var(--line)}summary{display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;list-style:none;padding:22px 0;font-family:var(--serif);font-size:24px;line-height:1.2}summary::-webkit-details-marker{display:none}summary span{font:25px/1 var(--sans);color:#767a6e;font-weight:300;flex-shrink:0}details[open] summary span{transform:rotate(45deg)}.detail-body{padding:0 0 22px;color:var(--muted);font-size:16px}.format-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px}.format-card{display:flex;flex-direction:column;align-items:flex-start;border-right:1px solid var(--line);padding-right:23px}.format-card:last-child{border:none;padding-right:0}.format-card>img{height:155px;margin-bottom:22px}.format-card h3{margin-bottom:15px;text-align:center;min-height:4.4em;display:flex;align-items:center;justify-content:center}.format-card>p{font-size:15px;line-height:1.55}.format-card>p:not(.price-line){text-align:justify}.price-line{font-weight:500;line-height:1.5;color:var(--ink)}.format-card .button{margin-top:auto;align-self:center}.credentials{display:grid;grid-template-columns:1fr 1fr}.credentials article{display:grid;grid-template-columns:70% 30%;background:#e1ded3}.credentials article>div{padding:45px 8% 45px 15%}.credentials article>img{height:100%}.credentials h2{font-size:38px;margin-bottom:22px}.credentials p{font-size:15px}.credentials .button{margin-top:12px}.green{background:var(--green)!important;color:var(--paper)}.contact{display:grid;grid-template-columns:1fr 2fr;gap:60px;border-bottom:1px solid var(--line)}.contact>div:last-child{max-width:780px}.eyebrow{display:block;text-transform:uppercase;letter-spacing:.18em;font-size:12px;margin-bottom:18px;color:var(--muted)}.contact-links{display:flex;gap:16px;margin-top:25px}footer{padding:35px 6% 30px}.footer-top{display:flex;align-items:baseline;gap:35px}.footer-top span{font-size:13px;color:var(--muted);white-space:nowrap}.important{border-top:1px solid var(--line);padding-top:25px;margin-top:28px;max-width:1100px}.important h3{font:14px var(--sans);margin-bottom:10px}.important p{font-size:13px;line-height:1.55;color:var(--muted);margin-bottom:8px}.footer-nav{display:flex;gap:26px;flex-wrap:wrap;margin-top:24px;font-size:13px}.footer-nav a{text-decoration:none}.copyright{border-top:1px solid var(--line);margin-top:18px;padding-top:12px;font-size:14px;color:var(--muted);max-width:1100px;text-align:center}.page-hero{display:grid;grid-template-columns:50% 50%;background:#e4e0d7;min-height:420px}.page-intro{padding:55px 10% 55px 12%}.page-intro h1{font-size:clamp(50px,5.4vw,82px);margin-bottom:30px}.page-intro p{font-size:19px;line-height:1.55}.page-hero>img{height:100%;max-height:550px}.service{display:grid;grid-template-columns:30% 70%;border-bottom:12px solid var(--paper);background:#e7e5de;scroll-margin-top:24px}.service>img{height:100%;max-height:920px;min-height:450px}.service>div{padding:45px 8% 50px 6%}.service h2{font-size:clamp(32px,3.4vw,49px);margin-bottom:22px}.service .button{margin-top:24px}.service .price-line{font-size:18px;margin-bottom:25px}.service details{margin-bottom:12px}.service summary{font-size:23px}.prices{display:flex;gap:36px;flex-wrap:wrap;color:var(--copper);margin-bottom:20px}.prices p{font-size:19px;margin:0}.service .price-line{font-size:19px;font-weight:400;color:var(--copper);margin-bottom:20px}.choose-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:35px;margin-bottom:30px}.choose-grid>div{border-right:1px solid var(--line);padding-right:25px}.choose-grid>div:last-child{border:none}.choose-grid img{width:78px;height:78px;border-radius:50%;margin-bottom:20px;margin-left:auto;margin-right:auto}.choose-grid h3{margin-bottom:15px;text-align:center;min-height:2.2em;display:flex;align-items:center;justify-content:center}.choose-grid p{font-size:15px;text-align:justify}.education-base{display:grid;grid-template-columns:1fr 1.5fr;gap:70px}.education-base p{white-space:pre-line}.learning{background:#e5e2d9}.learning-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px 60px;margin-top:35px}.learning-grid>div{display:flex;align-items:center;gap:24px}.learning-grid img{width:68px;height:68px;border-radius:50%;flex-shrink:0}.study-band{display:grid;grid-template-columns:60% 40%}.study-band.research-experience{grid-template-columns:40% 60%}.study-band>div{padding:55px 10%}.study-band h2{margin-bottom:27px}.study-band>img{height:100%;max-height:650px}.statement{display:grid;grid-template-columns:40% 60%;background:#e0ddd3}.statement>img{height:100%;max-height:400px}.statement>div{padding:50px 10%}.statement h2{margin-bottom:25px}.statement .button{margin-top:20px}.research-intro{display:grid;grid-template-columns:1fr 1.3fr;gap:60px}.research-intro ul{margin-top:15px}.publications{padding:0;list-style:none;margin:40px 0 0}.publications li{display:grid;grid-template-columns:55px 1fr;border-top:1px solid var(--line);padding:24px 0;gap:20px}.publications span{color:#838477}.publications p{font-size:16px}ul{padding-left:21px}li{padding-bottom:7px}.menu-toggle{display:none}.skip{position:absolute;left:20px;top:-100px;z-index:99;background:var(--green);color:white;padding:14px}.skip:focus{top:10px}@media(min-width:1700px){body{max-width:1680px;margin:auto;border-left:1px solid var(--line);border-right:1px solid var(--line)}}@media(max-width:1100px){header{padding:0 4%;gap:22px}nav{gap:17px}nav a{font-size:13px}.hero-copy{padding-left:8%;padding-right:6%}.hero-copy>p:not(.lead){font-size:14px}.hero h1{font-size:78px}.requests-grid{gap:28px 24px}.section{padding:45px 4%}.format-grid{gap:18px}.format-card{padding-right:15px}.format-card h3{font-size:23px}.credentials article{grid-template-columns:1fr}.credentials article>img{display:none}.credentials article>div{padding:38px 9%}.approach-copy{padding:22px 8%}.landscape>div{padding:40px 9%}.page-intro{padding:40px 8%}.page-intro p{font-size:17px}}@media(max-width:900px){.choose-grid h3{min-height:3.3em}html{scroll-padding-top:90px}header{height:76px;padding:0 5%;gap:15px;justify-content:space-between}.brand{font-size:26px}header>.button{display:none}.menu-toggle{display:block;border:1px solid var(--line);padding:9px 14px;background:transparent;color:var(--ink);font:14px var(--sans)}nav{display:none;position:absolute;left:0;right:0;top:76px;background:var(--paper);padding:18px 5% 25px;border-bottom:1px solid var(--line);margin:0;box-shadow:0 10px 15px #00000008}nav.open{display:flex;flex-direction:column;align-items:flex-start;gap:12px}nav a{font-size:17px}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:35px 6% 38px}.hero h1{font-size:78px;line-height:.94;margin-bottom:24px}.hero h2{font-size:25px;max-width:400px}.hero .lead{font-size:19px}.hero-copy>p:not(.lead){font-size:16px}.hero-photo{min-height:480px;max-height:570px}.hero-photo img{object-position:center 33%}.image-quote{bottom:6%;right:7%}.section{padding:42px 6%}.section-heading{align-items:flex-start;flex-direction:column;gap:18px;margin-bottom:28px}h2{font-size:38px}.requests-grid{grid-template-columns:1fr 1fr;gap:28px 24px}.requests-grid p{font-size:14px}.requests-grid img{width:64px;height:64px}.approach{grid-template-columns:1fr}.landscape{min-height:410px}.landscape>div{padding:36px 6%;gap:120px}.landscape h2{font-size:42px}.approach-copy{padding:18px 6% 35px}.format-grid{grid-template-columns:1fr 1fr;gap:38px 22px}.format-card,.format-card:last-child{border:none;padding:0}.format-card>img{height:150px}.format-card h3{font-size:24px;min-height:5.5em}.format-card>p{font-size:14px}.format-card .button{font-size:13px;padding:10px 16px}.credentials{grid-template-columns:1fr}.credentials article>div{padding:40px 6%}.credentials p{font-size:16px}.contact{grid-template-columns:1fr;gap:25px}.contact-links{flex-direction:column;align-items:flex-start}.footer-top{align-items:flex-start;flex-direction:column;gap:12px}.footer-top span{white-space:normal}footer{padding:30px 6%}.page-hero{grid-template-columns:1fr}.page-intro{padding:38px 6%}.page-intro h1{font-size:59px}.page-hero>img{height:300px}.service{grid-template-columns:1fr}.service>img{height:270px;min-height:0}.service>div{padding:32px 6% 40px}.service h2{font-size:36px}.service .price-line{font-size:19px}.prices{gap:10px;flex-direction:column}.choose-grid{grid-template-columns:1fr 1fr;gap:28px 22px}.choose-grid>div{border:0;padding:0}.choose-grid h3{font-size:24px}.education-base{grid-template-columns:1fr;gap:28px}.learning-grid{grid-template-columns:1fr;gap:25px}.learning-grid>div{gap:18px}.study-band,.statement{grid-template-columns:1fr}.study-band.research-experience{grid-template-columns:1fr}.study-band>div,.statement>div{padding:38px 6%}.study-band>img,.statement>img{height:280px}.research-intro{grid-template-columns:1fr;gap:28px}.publications li{grid-template-columns:28px 1fr;gap:13px}.publications p{font-size:15px}summary{font-size:23px}.text-link{white-space:normal}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}@media(max-width:370px){.hero h1{font-size:65px}.brand{font-size:23px}.format-grid{grid-template-columns:1fr}.format-card>img{height:200px}}

/* Personal panoramic portrait with a limestone veil beneath the copy. */
.personal-hero{display:block;isolation:isolate;overflow:hidden;min-height:720px;background:#e8dfcd}
.personal-hero .hero-photo{position:absolute;inset:0;min-height:0;z-index:-2}
.personal-hero .hero-photo img{height:100%;width:100%;object-fit:cover;object-position:right center}
.personal-hero:after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,rgba(238,236,230,.94) 0%,rgba(238,236,230,.90) 26%,rgba(238,236,230,.77) 43%,rgba(238,236,230,.30) 56%,rgba(238,236,230,0) 67%)}
.personal-hero .hero-copy{width:53%;max-width:800px;padding:48px 3% 48px 6%;background:none}
.personal-hero .hero-copy:before{display:none}
@media(max-width:1100px) and (min-width:901px){.personal-hero .hero-copy{width:56%;padding:40px 4%}.personal-hero{min-height:700px}.personal-hero:after{background:linear-gradient(90deg,#eeece6ed 0%,#eeece6df 40%,#eeece675 55%,#eeece600 72%)}}
@media(max-width:900px){.personal-hero{display:flex;flex-direction:column;min-height:0}.personal-hero:after{display:none}.personal-hero .hero-copy{width:100%;max-width:none;padding:35px 6% 38px;background:linear-gradient(#eeece6ed,#eeece6f2),url('assets/elena-hero.webp') left center/auto 100%}.personal-hero .hero-photo{position:relative;inset:auto;height:480px;min-height:480px;z-index:0}.personal-hero .hero-photo img{object-fit:cover;object-position:right center}}

/* Center every topic illustration and its caption. */
.requests-grid > div{text-align:center}
.requests-grid img{margin-left:auto;margin-right:auto}

/* Mobile and tablet-portrait refinements. Nothing here applies above 900px, so laptop layouts stay as they are. */
.nowrap{white-space:nowrap}
@media(max-width:900px){
.nowrap{white-space:normal}
h1,h2,h3,summary,.publications p{overflow-wrap:anywhere}
.hero h1{font-size:clamp(56px,19.5vw,78px)}
.page-intro h1{font-size:clamp(40px,12.4vw,59px)}
h2,.credentials h2{font-size:clamp(30px,9.7vw,38px)}
.landscape h2{font-size:clamp(32px,10.5vw,42px)}
.service h2{font-size:clamp(29px,9.2vw,36px)}
.menu-toggle{min-height:44px;padding:9px 16px}
nav.open{gap:2px}
nav.open a{width:100%;padding:11px 0;border-bottom:0}
nav.open a[aria-current]{color:var(--copper)}
.text-link{display:inline-block;padding:8px 0}
.footer-nav{gap:4px 22px}
.footer-nav a{display:inline-block;padding:8px 0}
p,li{text-align:justify;hyphens:auto}
h1,h2,h3,.eyebrow,.section-heading{text-align:center}
.section-heading{align-items:center}
.hero h2{margin-left:auto;margin-right:auto}
.landscape p{margin-left:auto;margin-right:auto}
.requests-grid p{text-align:center}
.price-line,.prices p{text-align:left}
.contact>div:last-child{max-width:none}
}
@media(min-width:601px) and (max-width:900px){
.requests-grid{grid-template-columns:repeat(3,1fr)}
.learning-grid{grid-template-columns:1fr 1fr}
.format-grid{gap:38px 28px}
}
@media(max-width:600px){
.format-grid,.choose-grid{grid-template-columns:1fr;gap:34px}
.format-card h3,.choose-grid h3{min-height:0}
.format-card>img{height:190px}
.format-card .button{align-self:flex-start}
.choose-grid>div{display:flex;flex-direction:column;align-items:center}
.choose-grid p{width:100%}
}
@media(max-width:480px){
.hero-copy .button,.service .button,.statement .button,.credentials .button,.contact-links .button,.format-card .button{width:100%}
.format-card .button{align-self:stretch}
.requests-grid{gap:26px 18px}
.landscape>div{gap:90px}
.landscape{min-height:360px}
.publications li{padding:20px 0}
}
@media(min-width:901px) and (max-width:1100px){
.format-grid,.choose-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.format-card h3,.choose-grid h3{overflow-wrap:anywhere}
}

/* Research page: topic list uses em-dash markers and stays left-aligned at every width. */
.research-intro ul{list-style:none;padding-left:0;margin-left:0}
.research-intro li{position:relative;padding-left:1.4em;text-align:left}
.research-intro li::before{content:'—';position:absolute;left:0}

/* Small screens: in blocks whose picture comes before the text, show it after the text so two pictures never stack. */
@media(max-width:900px){
.service>img,.statement>img,.study-band.research-experience>img{order:2}
}
