/* Approved Research Atelier direction; local fonts, no third-party runtime assets. */
@font-face{font-family:"Bodoni Moda";src:url("assets/fonts/bodoni-moda-latin.woff2") format("woff2");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"Bodoni Moda";src:url("assets/fonts/bodoni-moda-italic-latin.woff2") format("woff2");font-style:italic;font-weight:400;font-display:swap}
@font-face{font-family:"DM Sans";src:url("assets/fonts/dm-sans-latin.woff2") format("woff2");font-style:normal;font-weight:100 900;font-display:swap}
:root{--paper:#f3f0e8;--ink:#24332b;--muted:#61665e;--rule:#c9cdc0;--accent:#713c40;--tint:#e4e6da;--sheet:#fbf9f3;--control-border:#75786f;--night:#263930;--on-night:#f5f0df;--night-muted:#c0c9b9;--sans:"DM Sans",Arial,sans-serif;--serif:"Bodoni Moda",Georgia,serif;--solid:#68393e;--on-solid:#fff7e9}
.wrap{width:calc(100% - 96px);max-width:1200px}
h2,h3{font-family:var(--serif);font-weight:400}
h2{font-size:clamp(2.7rem,4.5vw,3.75rem);letter-spacing:-.045em}
.masthead{background:var(--paper);color:var(--ink)}
.header{min-height:104px;border-bottom:1px solid var(--rule)}
.brand{width:191px}
.header .brand{flex:0 1 191px}
.menu-button{flex-shrink:0;white-space:nowrap}
.header>.button,.header>.button:hover,.menu-button{color:var(--ink)}
.header>.button{border-bottom:1px solid var(--ink);padding-block:8px;font-size:.875rem}
.masthead :focus-visible,.hero :focus-visible{outline-color:var(--accent)}
.button{background:var(--solid);border-color:var(--solid);color:var(--on-solid);font-size:.875rem;min-height:50px;border-radius:0}
.button:hover{background:#7b454a;border-color:#7b454a;color:var(--on-solid)}
.eyebrow{font-size:.75rem;letter-spacing:.11em}
.hero.atelier-hero{background:var(--paper);color:var(--ink);overflow:visible}
.hero.atelier-hero:after{display:none}
.atelier-hero .hero-inner{padding-block:28px 40px}
.atelier-meta{display:flex;justify-content:space-between;gap:24px;margin-bottom:30px}
.atelier-meta .eyebrow{color:var(--muted);margin:0}
.atelier-heading{display:grid;grid-template-columns:1.7fr 1fr;gap:40px;align-items:end}
.atelier-heading>*{min-width:0}
.hero.atelier-hero h1{font-family:var(--serif);font-size:clamp(4.25rem,10.9vw,9rem);line-height:.96;letter-spacing:-.065em;font-weight:400}
.atelier-heading h1 em{font-weight:400;color:var(--accent);letter-spacing:-.055em}
.atelier-hero-copy{max-width:345px;justify-self:end;padding-bottom:4px}
.atelier-hero-copy>p{font-size:1rem;line-height:1.8;color:var(--muted);margin-bottom:25px}
.atelier-hero .button{background:var(--solid);border-color:var(--solid);color:var(--on-solid);display:flex;justify-content:space-between}
.atelier-hero .button:hover{background:#7b454a}
.atelier-hero .text-link{color:var(--ink);font-size:.875rem;margin-top:8px}
.atelier-cover{position:relative;max-width:1440px;margin:auto;background:#e8dec9;overflow:hidden}
.atelier-cover>img{width:100%;height:clamp(420px,42vw,600px);object-fit:cover;object-position:50% 0%}
.atelier-cover figcaption{position:absolute;left:max(48px,calc((100% - 1200px)/2));top:38px;color:#443c30;max-width:200px}
.atelier-cover figcaption small{font:400 .75rem/1.6 var(--sans);text-transform:uppercase;letter-spacing:.13em}
.atelier-cover figcaption span{display:block;font:italic 2.1rem/1.2 var(--serif);letter-spacing:-.035em;margin-top:17px}
.atelier-caption{display:flex;justify-content:space-between;gap:24px;font-size:.75rem;color:var(--muted);padding-block:15px;border-bottom:1px solid var(--rule)}
.atelier-caption>a{display:flex;align-items:center;min-height:30px}
.service-directory{gap:20px;padding-block:24px}
.service-directory>a{display:flex;justify-content:space-between;font-family:var(--serif);font-size:1.45rem;min-height:44px;border:0;padding:0}
.service-directory>a>span:first-child{display:none}
.service-directory .directory-arrow{font:1rem var(--sans)}
.contact h2 em{font-weight:400;color:#debd97}
.atelier-gallery{padding-block:80px 70px}
.atelier-work-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:start}
.atelier-work-grid>*{min-width:0}
.atelier-offset{margin-top:72px}
.atelier-image-link{display:block;overflow:hidden}
.atelier-detail-image{width:100%;height:480px;object-fit:cover;object-position:48% 50%;transition:transform 700ms ease}
.atelier-image-link:hover img{transform:scale(1.025)}
.atelier-work-caption{display:grid;grid-template-columns:25px minmax(0,1fr);gap:12px;margin-top:22px}
.atelier-work-caption>span{font-size:.75rem;color:var(--muted);padding-top:8px}
.atelier-work-caption h3{font-size:2rem;line-height:1.18;letter-spacing:-.035em;margin-bottom:12px}
.atelier-work-caption p{font-size:.875rem;color:var(--muted);line-height:1.7}
.atelier-work-caption .text-link{margin-top:6px}
.atelier-book-study{background:#d9c9aa;min-height:510px;padding:42px;display:flex;align-items:center;justify-content:center}
.atelier-cover-design{width:300px;max-width:100%;padding:30px 28px 24px;background:#643c3e;color:#fff3d6}
.atelier-cover-design .eyebrow{color:#e5c8ab;line-height:1.7;margin-bottom:36px}
.atelier-cover-title{font:400 clamp(2.6rem,4.3vw,3.75rem)/1.04 var(--serif);letter-spacing:-.035em;margin-bottom:34px}
.atelier-cover-title em{font-weight:400}
.atelier-cover-foot{border-top:1px solid #c9a78b;padding-top:16px;font-size:.75rem;letter-spacing:.07em;text-transform:uppercase}
.atelier-presentation{margin-top:52px;display:grid;grid-template-columns:1.4fr 1fr;background:var(--tint)}
.atelier-slide-poster{padding:38px;background:#253c33;color:#f5efdc;display:flex;flex-direction:column;justify-content:space-between;min-height:365px}
.atelier-slide-poster .eyebrow{color:#c7d0bd;margin:0}
.atelier-slide-poster h3{font-size:clamp(2.8rem,4.8vw,4.15rem);line-height:1.02;letter-spacing:-.04em;margin:44px 0}
.atelier-slide-poster h3 em{font-weight:400;color:#e5c596}
.atelier-slide-footer{border-top:1px solid #76877a;padding-top:17px;font-size:.75rem;display:flex;justify-content:space-between;gap:20px}
.atelier-slide-copy{padding:38px;align-self:center}
.atelier-slide-copy h3{font-size:2.3rem;line-height:1.13;letter-spacing:-.04em;margin-bottom:20px}
.atelier-slide-copy>p:not(.eyebrow){font-size:1rem;line-height:1.8;color:var(--muted)}
.atelier-slide-copy .text-link{margin-top:15px}
.atelier-close-reading{border-block:1px solid var(--rule);margin-top:32px;padding-block:4px 24px}
.atelier-close-reading>summary{font-size:1rem;min-height:56px;display:list-item;padding:16px 8px}
.atelier-close-reading>summary,.sharing>summary,.language-options>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px}
.atelier-close-reading>summary:after,.sharing>summary:after,.language-options>summary:after{content:"+";font-size:1.25rem;line-height:1;flex:none;color:var(--accent)}
.atelier-close-reading[open]>summary:after,.sharing[open]>summary:after,.language-options[open]>summary:after{content:"−"}
.services-section{border-top:1px solid var(--rule);padding-block:70px;gap:85px;grid-template-columns:.85fr 1.3fr}
.services-intro .text-link{margin-top:25px}
.service-row h3{font-family:var(--sans);font-size:1.125rem;line-height:1.45;gap:14px}
.service-row summary{padding-block:22px}
.service-content ul{font-size:.9375rem}
.section{padding-block:70px}
.method-grid{gap:85px}
.steps h3{font-size:1.85rem}
.atelier-quality{display:grid;grid-template-columns:.85fr 1.3fr;gap:70px;padding-block:0 80px}
.atelier-quality h2{font-size:2.65rem;line-height:1.12;margin-bottom:25px}
.atelier-quality>div>p:not(.eyebrow){font-size:1rem;color:var(--muted);line-height:1.8}
.table-scroll{min-width:0}
.atelier-quality table{border-collapse:collapse;width:100%;font-size:.9375rem;text-align:left}
.atelier-quality caption{text-align:left;font-size:.75rem;color:var(--muted);padding-bottom:12px}
.atelier-quality th,.atelier-quality td{vertical-align:top;padding:16px 0;border-bottom:1px solid var(--rule);line-height:1.75}
.atelier-quality thead th{border-top:1px solid var(--ink);font-size:.8125rem;color:var(--muted);font-weight:500}
.atelier-quality tbody th{width:32%;padding-right:22px;font-weight:500}
.atelier-quality td{color:var(--muted)}
.faq h2{font-size:2.8rem}
.contact{--rule:#63705e;--muted:#c9d1c3;--accent:#debd97;--control-border:#8e9b86}
.contact-grid{grid-template-columns:1.25fr 1fr}
.contact h2{font-size:clamp(3rem,5.2vw,4.7rem);line-height:1.04}
.contact-grid .button{background:#eee7d3;color:#23372b;border:1px solid #eee7d3;padding:15px 21px;font-size:1rem;max-width:350px}
.contact-grid .button:hover{background:#fff7e9;color:#23372b}
.contact .brief-form input,.contact .brief-form select,.contact .brief-form textarea{background:#f3f0e8;color:#24332b}
.contact .brief-form .button:hover{color:var(--night)}
.reading-copy>p+p{margin-top:24px}
.guide-links{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin-top:26px;font-size:.875rem;max-width:380px}
.guide-links .eyebrow{margin:0}
.guide-links a{padding-block:7px;line-height:1.6}
.guide-layout{display:grid;grid-template-columns:minmax(0,760px) minmax(200px,1fr);gap:80px;border-top:1px solid var(--rule);padding-block:55px 80px}
.guide-copy{min-width:0;max-width:760px}
.guide-section+.guide-section{margin-top:42px}
.guide-section h2{font-size:clamp(1.75rem,3vw,2.25rem);line-height:1.25;margin-bottom:22px}
.guide-section p,.guide-checklist,.guide-sources{font-size:1.0625rem;line-height:1.85;color:var(--muted)}
.guide-checklist,.guide-sources{padding-left:1.6em}
.guide-checklist li+li,.guide-sources li+li{margin-top:18px}
.guide-checklist li::marker{color:var(--accent);font-weight:600}
.guide-intro{align-self:end;border-left:1px solid var(--rule);padding-left:28px;color:var(--muted);line-height:1.7}
.guide-intro p{margin-bottom:20px}
.guide-aside{border-left:1px solid var(--rule);padding-left:28px;align-self:start;min-width:0}
.guide-aside .guide-links{margin-top:0;margin-bottom:36px}
.guide-aside>p{font-size:.875rem;color:var(--muted);margin-bottom:12px}
@media(max-width:760px){.guide-layout{grid-template-columns:1fr;gap:40px;padding-block:35px 50px}.guide-intro,.guide-aside{border-left:0;padding-left:0}.guide-aside{border-top:1px solid var(--rule);padding-top:30px}.guide-section p,.guide-checklist,.guide-sources{font-size:1rem}}
.reading-copy h2,.detail-faq h3{font-family:var(--serif)}
.detail-hero h1{font-size:clamp(3rem,5.8vw,5.35rem)}
.scope-box h2{font-family:var(--sans)}
.scope-box li{font-size:1rem}
.sample-disclosure,.small,.form-note,.credits{font-size:.8125rem}
.reading-grid>*{min-width:0}
.header>nav a,.footer-links a{min-height:44px;display:inline-flex;align-items:center;font-size:.875rem}
@media(max-width:1100px){.atelier-work-grid{gap:28px}.atelier-detail-image{height:410px}.atelier-book-study{padding:30px;min-height:450px}.atelier-presentation{grid-template-columns:1.2fr 1fr}.atelier-slide-poster,.atelier-slide-copy{padding:28px}.services-section,.method-grid,.atelier-quality{gap:44px}.atelier-cover-design{padding:26px 22px}}
@media(max-width:760px){.atelier-gallery{padding-block:48px}.atelier-work-grid,.atelier-presentation,.services-section,.atelier-quality{grid-template-columns:1fr}.atelier-offset{margin-top:0}.atelier-work-grid{gap:32px}.atelier-detail-image{height:350px}.atelier-book-study{min-height:390px}.atelier-cover-title{font-size:3rem}.atelier-cover-design{width:265px}.atelier-cover-design .eyebrow{margin-bottom:25px}.atelier-presentation{margin-top:34px}.atelier-slide-poster{min-height:325px;padding:28px}.atelier-slide-poster h3{font-size:3.15rem}.atelier-slide-copy{padding:28px}.atelier-work-caption h3{font-size:1.9rem}.services-section{gap:30px;padding-block:48px}.service-row h3{font-size:1.0625rem}.section{padding-block:50px}.atelier-quality{gap:25px;padding-block:0 50px}.atelier-quality th,.atelier-quality td{font-size:.875rem}.atelier-quality tbody th{width:34%;padding-right:14px}.contact-grid{grid-template-columns:1fr}.contact h2{font-size:clamp(2.8rem,10vw,4.5rem)}.detail-hero h1{font-size:clamp(2.5rem,9vw,4rem)}.method-grid{gap:30px}.work-heading h2,.services-intro h2{font-size:2.85rem}.atelier-close-reading>summary{font-size:.9375rem}.steps h3{font-size:1.65rem}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.atelier-heading{gap:30px}.atelier-hero-copy{max-width:300px}.atelier-cover figcaption{left:32px}.service-directory{gap:12px}.service-directory>a{font-size:1.25rem}}
@media(max-width:760px){.wrap{width:calc(100% - 44px)}.header{min-height:82px}.atelier-meta>span{display:none}.atelier-hero .hero-inner{padding-block:24px 30px}.atelier-heading{grid-template-columns:1fr;gap:27px}.hero.atelier-hero h1{font-size:clamp(3.35rem,18vw,7.5rem)}.atelier-hero-copy{max-width:520px;justify-self:start}.atelier-hero-copy>p{margin-bottom:20px}.atelier-hero .button{display:inline-flex;gap:30px}.atelier-hero .text-link{display:flex;width:max-content;max-width:100%}.atelier-cover>img{height:355px;object-position:68% 45%}.atelier-cover figcaption{display:none}.atelier-caption>span{max-width:190px}.service-directory{gap:4px 18px}.service-directory>a{font-size:1.25rem;border:0!important;padding:8px 0!important;min-height:46px}.atelier-meta{margin-bottom:24px}}
@media(prefers-color-scheme:dark){:root{--paper:#202420;--ink:#f0eee4;--muted:#bfc5b9;--rule:#535d50;--accent:#e2a8a0;--tint:#303a30;--sheet:#292f2a;--control-border:#8a9486}.button:hover{color:var(--on-solid)}}
@media print{.atelier-cover{max-height:250px;overflow:hidden}.hero.atelier-hero h1{font-size:50pt}.atelier-heading{display:block}.atelier-hero-copy{max-width:none;margin-top:20px}}
