/* Shared editorial pages. The home film retains its approved cinematic layout. */
.header .desktop-nav a[aria-current=page]::after{transform:scaleX(1)}
.subpage .header{color:var(--ink);background:#fff;border-bottom:1px solid var(--line)}
.subpage .header .nav-contact{border-color:var(--line)}
.footer-nav{display:flex;gap:25px;flex-wrap:wrap;margin-top:40px;font-size:14px}
.footer-nav a{padding:8px 0}.footer-nav a:hover{text-decoration:underline}
.footer-bottom a{text-decoration:underline;text-underline-offset:4px}
.page-intro{padding-top:153px;padding-bottom:72px}
.breadcrumb{display:flex;align-items:center;gap:14px;font-size:12px;line-height:1.5;letter-spacing:.1em;color:var(--muted);margin-bottom:68px}
.breadcrumb a{border-bottom:1px solid var(--line)}
.page-intro>.eyebrow{margin-bottom:30px}
.page-intro-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:6vw;align-items:end}
.page-intro h1{font-size:clamp(35px,3.8vw,62px);line-height:1.7;letter-spacing:.06em}
.intro-desc{font-size:16px;letter-spacing:.03em;line-height:2.2;padding-bottom:13px}
.wide-photo{height:clamp(380px,41vw,680px);overflow:hidden;background:#eaece6}
.wide-photo img{width:100%;height:100%;object-fit:cover;object-position:center 47%}
.family-cover img{object-position:50% 57%}.service-cover img{object-position:50% 48%}.career-cover img{object-position:50% 48%}
.page-section{padding-top:110px;padding-bottom:110px}
.pale{background:#f5f6f2}
.editorial-split{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:start}
.editorial-split .eyebrow{margin-bottom:34px;color:#626c5b}
.editorial-split h2{font-size:clamp(28px,2.7vw,44px);line-height:1.85;letter-spacing:.045em}
.prose{max-width:620px}.prose p{font-size:16px;line-height:2.2;letter-spacing:.035em;margin-bottom:26px}.prose p:last-child{margin-bottom:0}
.prose h3{font-size:25px;margin-bottom:24px}.prose .text-link{display:inline-block}
.large-prose p{font-family:var(--serif);font-size:19px;line-height:2.2}
.experience-band{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);margin-top:76px;padding-top:40px;gap:7vw}
.experience-band>div+div{border-left:1px solid var(--line);padding-left:7vw}
.experience-band>div>p:first-child{font-size:14px;letter-spacing:.04em}
.experience-number{font-family:Arial,sans-serif;font-weight:400;font-size:clamp(85px,9vw,136px);line-height:1.15!important;letter-spacing:-.06em;margin-top:18px;font-variant-numeric:tabular-nums}
.experience-number small{font-family:var(--serif);font-size:23px;letter-spacing:0;margin-left:20px}
.small-note{font-size:12px!important;line-height:1.85!important;color:#62685d;margin-top:25px}.small-note a{text-decoration:underline;text-underline-offset:3px}
.home-experience{padding-top:0;padding-bottom:90px}.home-experience .experience-band{margin-top:0}
.section-heading{display:grid;grid-template-columns:.68fr 1.32fr;gap:7vw;margin-bottom:58px}
.section-heading>.eyebrow{padding-top:14px;color:#66705e}
.section-heading h2{font-size:clamp(30px,3vw,47px);line-height:1.8;letter-spacing:.05em}
.section-heading div>p{margin-top:22px;font-size:16px;line-height:2.1}
.step-nav{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #bdc5b6;border-bottom:1px solid #bdc5b6;margin-bottom:25px}
.step-nav a{font-size:16px;padding:25px 15px;display:flex;gap:16px;align-items:center;transition:background .3s}
.step-nav a+a{border-left:1px solid var(--line)}.step-nav a:hover{background:#e5e9df}
.step-nav span{font-family:var(--serif);font-size:18px;color:#6f8062}
.process-row{display:grid;grid-template-columns:1fr 1fr;gap:7vw;padding:75px 0;border-bottom:1px solid var(--line);align-items:center}
.process-row:last-child{padding-bottom:0;border-bottom:0}
.process-image{overflow:hidden;aspect-ratio:1.36}.process-image img{width:100%;height:100%;object-fit:cover}
.process-number{font-family:var(--serif);font-size:50px;line-height:1.2;color:#829073;margin-bottom:28px}
.process-copy h3{font-size:clamp(27px,2.5vw,39px);line-height:1.85;letter-spacing:.05em;margin-bottom:22px}
.process-copy>p:not(.process-number){font-size:16px;line-height:2.1}
.process-copy .process-tags{font-size:13px!important;color:#66715e;margin-top:27px;padding-top:18px;border-top:1px solid var(--line);line-height:2!important}
.strength-list article{display:grid;grid-template-columns:.2fr .9fr 1fr;gap:4vw;padding:42px 0;border-top:1px solid var(--line);align-items:start}
.strength-list article>span{font-family:var(--serif);font-size:23px;color:#829073}
.strength-list h3{font-size:27px}.strength-list p{font-size:16px;line-height:2.1}
.service-media{padding-top:90px;padding-bottom:100px;background:#283126;color:#fff}
.service-media .eyebrow{color:#c8d1c2}.service-media h2{font-size:clamp(34px,3.8vw,58px);margin:30px 0 25px;line-height:1.8}
.service-media .text-link{display:inline-block;margin-top:30px;border-color:#99a991;font-size:16px}
.simple-flow{padding:0;margin:0 0 80px;list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:30px}
.simple-flow li{padding-top:24px;border-top:1px solid #a4b19a}.simple-flow li>span{font-size:14px;color:#66705e}
.simple-flow h3{font-size:21px;margin-top:22px;margin-bottom:12px;letter-spacing:.03em}.simple-flow p{font-size:16px;line-height:1.9}
.faq-list{max-width:1000px;margin:0 auto}.faq-list details{border-top:1px solid var(--line)}.faq-list details:last-child{border-bottom:1px solid var(--line)}
.faq-list summary{list-style:none;cursor:pointer;font-size:17px;padding:27px 48px 27px 0;position:relative;line-height:1.8}
.faq-list summary::-webkit-details-marker{display:none}.faq-list summary::after{content:'+';position:absolute;right:10px;top:26px;font-size:23px;font-weight:300;color:#718064}
.faq-list details[open] summary::after{content:'−'}.faq-list details>p{font-size:16px;line-height:2.1;padding:0 48px 30px 0;color:#525d49;max-width:870px}.faq-list summary:focus-visible{outline:2px solid var(--ink);outline-offset:5px}
.name-story{padding-top:100px;padding-bottom:105px;background:#f1f2ed}.name-wordmark{display:block;font-family:ZenInter,Arial,sans-serif;font-size:clamp(120px,18vw,270px);font-weight:900;letter-spacing:-.08em;line-height:1.1;margin:50px 0 75px}
.representative{padding-top:90px;padding-bottom:110px;display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center;background:#f8f8f5}
.portrait{height:520px;overflow:hidden;max-width:530px}.portrait img{width:100%;height:100%;object-fit:cover;object-position:50% 35%}
.representative h2{font-size:clamp(30px,3vw,46px);margin:28px 0}.representative>div>p{font-size:16px;line-height:2.1}
.representative-name{font-family:var(--serif);font-size:28px!important;margin-top:40px;line-height:1.8!important}
.representative-name small{display:block;font-family:var(--sans);font-size:13px;line-height:1.7;margin-bottom:12px}.representative-name span{font-family:var(--sans);font-size:12px;display:block;letter-spacing:.1em;color:var(--muted);margin-top:8px}
.career-work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.career-photo{aspect-ratio:1.1;overflow:hidden}.career-photo img{width:100%;height:100%;object-fit:cover}
.career-work-grid article>span{display:block;font-size:12px;letter-spacing:.15em;margin:25px 0 13px;color:#637359}.career-work-grid h3{font-size:24px;letter-spacing:.035em;margin-bottom:12px}.career-work-grid p{font-size:16px;line-height:2}
.job-row{display:grid;grid-template-columns:70px 1fr 190px;gap:25px;border-top:1px solid var(--line);padding:40px 0;align-items:start}.job-row>span{padding-top:15px;color:#738466}
.job-row h3{font-size:31px}.job-row .job-type{font-size:13px;letter-spacing:.03em;color:#637359;margin:10px 0 22px}.job-row p{font-size:16px;line-height:2.1;max-width:760px}.job-row .text-link{margin-top:12px;margin-left:auto}
.job-conditions{max-width:970px;margin:50px 0 0 auto}.job-conditions>div{display:grid;grid-template-columns:140px 1fr;gap:30px;border-top:1px solid var(--line);padding:25px 0;font-size:16px;line-height:2}.job-conditions dt{color:#66705e}.job-conditions dd{margin:0}.job-conditions+.small-note{max-width:970px;margin-left:auto}
.careers-teaser{display:grid;grid-template-columns:.4fr 1fr 1fr;gap:5vw;padding-top:95px;padding-bottom:95px;border-top:1px solid var(--line);align-items:start}.careers-teaser>.eyebrow{padding-top:13px}.careers-teaser h2{font-size:32px;line-height:1.9}.careers-teaser .text-link{display:inline-block}.careers-teaser p{font-size:16px;line-height:2}
.contact-options{padding-top:0;padding-bottom:90px}.contact-option{display:block;padding:45px 0;border-top:1px solid var(--line);position:relative;transition:padding .3s,background .3s}.contact-option:hover{padding-left:22px;background:#f6f7f4}
.contact-option>span{font-size:12px;color:#65755b;letter-spacing:.1em}.contact-option h2{font-size:31px;margin:20px 0 12px}.contact-option>p{font-size:16px}.contact-option em{font-size:14px;font-style:normal;display:inline-block;padding:10px 0;margin-top:18px;border-bottom:1px solid #8f9b84}.contact-option em span{font-size:12px;color:#646d5e;margin-left:20px}
.contact-direct{padding-top:85px;padding-bottom:95px;background:#eef0eb}.contact-direct h2{font-size:36px;margin:30px 0}.email-large{font-size:clamp(24px,3.5vw,53px);letter-spacing:-.02em;border-bottom:1px solid #929f87;display:inline-block;padding-bottom:10px;margin-bottom:25px}.contact-direct>p:last-child{font-size:16px}
.gourmet-hero{display:grid;grid-template-columns:1.25fr 1fr;gap:5vw;padding-top:143px;padding-bottom:70px;background:#f8f6f1;overflow:hidden}
.gourmet-hero .breadcrumb{margin-bottom:55px}.gourmet-name{font-family:var(--serif);font-size:23px;margin:20px 0 27px;letter-spacing:.09em}
.gourmet-hero h1{font-size:clamp(30px,3vw,49px);line-height:1.9;letter-spacing:.03em}.gourmet-hero-copy>p:not(.eyebrow):not(.breadcrumb):not(.gourmet-name){font-size:16px;margin-top:30px}
.hero-links{display:flex;gap:30px;margin-top:0}.hero-links .text-link{font-size:14px}
.gourmet-hero-visual{position:relative;display:flex;gap:20px;align-items:center;padding-top:43px;padding-bottom:60px}
.gourmet-hero-visual img{width:calc(50% - 10px);height:auto;aspect-ratio:9/16;object-fit:cover;box-shadow:0 15px 35px #493e2415}
.gourmet-hero-visual img:nth-child(2){transform:translateY(55px)}.gourmet-hero-visual>span{position:absolute;bottom:0;left:0;font-size:12px;letter-spacing:.18em;color:#74694f;line-height:1.8}
.social-links{display:flex;gap:40px}.social-links .text-link{margin-top:18px;display:inline-block}
.reel-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px}.reel-player{position:relative;aspect-ratio:9/16;background:#20241d;overflow:hidden}.published-reel{width:100%;height:100%;object-fit:contain}
.reel-start{position:absolute;inset:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;gap:10px;background:linear-gradient(0deg,#0006,transparent 50%);color:#fff;font-size:14px;text-shadow:0 1px 5px #000}
.reel-start span{font-size:30px}.reel-start[hidden]{display:none}.reel-start:focus-visible{outline-offset:-6px;outline-color:white}
.reel-card>p{font-family:var(--serif);font-size:17px;margin:20px 0 4px;letter-spacing:.02em;line-height:1.9}.reel-card>.small-note{margin-top:0;display:block}.media-credit{margin-top:30px}
.case-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px 45px}.case-card{display:block}.case-image{position:relative;overflow:hidden;aspect-ratio:16/9;background:#e8ebe3}.case-image img{width:100%;height:100%;object-fit:cover;transition:transform .7s}.case-card:hover img{transform:scale(1.025)}.case-image>span{position:absolute;bottom:0;right:0;font-size:12px;letter-spacing:.1em;background:white;padding:11px 18px}.case-shop{font-size:14px;margin-top:24px;color:#64705a}.case-card h3{font-size:30px;line-height:1.65;letter-spacing:.045em;margin:10px 0 18px}.case-more{font-size:14px;border-bottom:1px solid #9ca792;padding:7px 0;display:inline-block}
.story-jump{display:flex;gap:30px;flex-wrap:wrap;padding-bottom:30px}.story-jump a{font-size:14px;padding:10px 0;border-bottom:1px solid var(--line)}
.story-detail{padding:75px 0;border-top:1px solid var(--line)}.story-detail-head .eyebrow{color:#617353;margin-bottom:18px}.story-detail-head h2{font-size:32px;margin-bottom:34px}
.story-detail-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:5vw;align-items:start}
.interview-image{display:block}.interview-image img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}.interview-image>span{display:flex;justify-content:space-between;align-items:center;padding:18px 0;border-bottom:1px solid var(--line);font-size:14px}.interview-image small{font-size:12px;color:#64705b}
.result-label{font-size:12px;color:#66735a;margin-bottom:22px}.result-period{font-size:18px;line-height:1.5;margin-bottom:14px}.story-result h3{font-family:var(--sans);font-size:clamp(32px,3.7vw,58px);font-weight:400;letter-spacing:-.025em;line-height:1.45;margin-bottom:24px}.story-result>p:not(.result-label):not(.result-period){font-size:16px;line-height:2}.story-result .result-topic{color:#64705b;margin-top:16px}.story-result .text-link{display:inline-block;margin-top:18px}.case-source{font-size:12px;color:#68715f;line-height:1.85;margin-top:28px;max-width:1040px}.case-source a{text-decoration:underline;text-underline-offset:4px}
.story-note{padding-top:0;padding-bottom:75px}.story-note p{font-size:13px;color:#606958}
@media(min-width:1800px){.gourmet-hero{grid-template-columns:1.3fr 1fr}.gourmet-hero-visual{max-width:660px}}
@media(max-width:1100px){.wordmark-caption{display:none}.desktop-nav{gap:24px}.step-nav a{font-size:14px;gap:10px}.page-intro-grid{grid-template-columns:1.35fr 1fr;gap:30px}.case-card h3{font-size:27px}.hero-links{gap:20px}.gourmet-hero h1{font-size:32px}.gourmet-hero-visual{gap:12px}.gourmet-hero-visual img{width:calc(50% - 6px)}.reel-grid{gap:18px}.career-work-grid h3{font-size:21px}.job-row{grid-template-columns:35px 1fr 160px}.careers-teaser{grid-template-columns:1fr 1fr}.careers-teaser>.eyebrow{grid-column:1/-1}}
@media(max-width:720px){
 .mobile-menu{padding-top:105px;padding-bottom:24px;overflow-y:auto}.mobile-menu nav a{font-size:23px;padding:15px 0;line-height:1.5}.mobile-menu>p{margin-top:22px}
 .footer-nav{display:grid;grid-template-columns:1fr 1fr;gap:12px 22px;margin-top:25px;font-size:14px}.footer-bottom{flex-wrap:wrap;gap:20px}.footer-bottom>span:last-child{display:none}
 .page-intro{padding-top:113px;padding-bottom:45px}.breadcrumb{font-size:12px;margin-bottom:42px;gap:12px}.page-intro>.eyebrow{margin-bottom:22px}.page-intro-grid{grid-template-columns:1fr;gap:25px}.page-intro h1{font-size:clamp(29px,7.8vw,43px);letter-spacing:.035em;line-height:1.8}.intro-desc{font-size:16px;padding-bottom:0;line-height:2.1}.intro-desc br{display:none}
 .wide-photo{height:auto;aspect-ratio:1.35}.wide-photo img{object-position:center}.family-cover{aspect-ratio:16/9}.page-section{padding-top:65px;padding-bottom:70px}
 .editorial-split{grid-template-columns:1fr;gap:32px}.editorial-split h2{font-size:29px;letter-spacing:.025em}.editorial-split .eyebrow{margin-bottom:24px}.prose p{font-size:16px;line-height:2.1;margin-bottom:23px}.large-prose p{font-size:17px}.prose h3{font-size:23px}
 .experience-band{gap:24px;margin-top:40px;padding-top:25px}.experience-band>div+div{padding-left:24px}.experience-band>div>p:first-child{font-size:12px;line-height:1.9}.experience-number{font-size:66px;margin-top:18px;letter-spacing:-.07em}.experience-number small{font-size:16px;margin:7px 0 0;display:block;letter-spacing:.02em}.small-note{margin-top:22px}.home-experience{padding-bottom:65px}
 .section-heading{grid-template-columns:1fr;gap:24px;margin-bottom:34px}.section-heading>.eyebrow{padding-top:0}.section-heading h2{font-size:31px;letter-spacing:.03em}.section-heading div>p{margin-top:18px;font-size:16px}
 .step-nav{grid-template-columns:1fr 1fr;margin-bottom:0}.step-nav a{font-size:14px;gap:12px;padding:20px 10px}.step-nav a:nth-child(3){border-left:0;border-top:1px solid var(--line)}.step-nav a:nth-child(4){border-top:1px solid var(--line)}.step-nav span{font-size:16px}
 .process-row{grid-template-columns:1fr;gap:28px;padding:45px 0}.process-image{aspect-ratio:1.4}.process-number{font-size:40px;margin-bottom:18px}.process-copy h3{font-size:28px;letter-spacing:.025em;margin-bottom:20px}.process-copy .process-tags{font-size:12px!important;line-height:1.9!important;margin-top:24px}
 .strength-list article{grid-template-columns:30px 1fr;gap:12px 18px;padding:30px 0}.strength-list article>span{font-size:19px;padding-top:5px}.strength-list h3{font-size:24px}.strength-list p{grid-column:2;font-size:16px}.service-media{padding-top:60px;padding-bottom:66px}.service-media h2{font-size:32px;margin:25px 0}.service-media p{font-size:16px}
 .simple-flow{grid-template-columns:1fr 1fr;gap:32px 23px;margin-bottom:55px}.simple-flow h3{font-size:19px;line-height:1.8;margin-top:16px}.simple-flow p{font-size:16px}.faq-list summary{font-size:16px;padding:22px 38px 22px 0}.faq-list summary::after{top:21px}.faq-list details>p{padding:0 22px 26px 0;font-size:16px}
 .name-story{padding-top:60px;padding-bottom:65px}.name-wordmark{font-size:150px;margin:33px 0 50px}.representative{grid-template-columns:1fr;gap:35px;padding-top:60px;padding-bottom:65px}.portrait{height:auto;aspect-ratio:1;max-width:none}.representative h2{font-size:31px;margin:24px 0}.representative>div>p br{display:none}.representative-name{margin-top:30px}
 .career-work-grid{grid-template-columns:1fr;gap:44px}.career-photo{aspect-ratio:1.45}.career-work-grid h3{font-size:26px}.career-work-grid article>span{margin-top:22px}
 .job-row{grid-template-columns:28px 1fr;gap:12px 15px;padding:30px 0}.job-row>span{padding-top:10px}.job-row h3{font-size:25px;letter-spacing:.015em}.job-row .job-type{font-size:12px;margin:8px 0 18px}.job-row .text-link{grid-column:2;margin:5px 0 0}.job-conditions{margin-top:35px}.job-conditions>div{grid-template-columns:1fr;gap:8px;font-size:16px;padding:23px 0}.job-conditions dt{font-size:14px}.careers-teaser{grid-template-columns:1fr;gap:24px;padding-top:60px;padding-bottom:65px}.careers-teaser h2{font-size:29px}.careers-teaser .text-link{margin-top:16px}
 .contact-options{padding-bottom:50px}.contact-option{padding:30px 0}.contact-option:hover{padding-left:0}.contact-option h2{font-size:25px;letter-spacing:.02em;margin:18px 0 14px}.contact-option>p{font-size:16px;line-height:2}.contact-option em{font-size:14px}.contact-option em span{display:block;margin:6px 0 0}.contact-direct{padding-top:58px;padding-bottom:66px}.contact-direct h2{font-size:28px;margin:24px 0}.email-large{font-size:27px;word-break:break-all}.contact-direct>p:last-child{font-size:16px}
 .gourmet-hero{grid-template-columns:1fr;gap:30px;padding-top:113px;padding-bottom:60px}.gourmet-hero .breadcrumb{margin-bottom:42px}.gourmet-name{font-size:20px;margin:18px 0 25px}.gourmet-hero h1{font-size:clamp(25px,6.6vw,38px);line-height:1.9;letter-spacing:.01em}.gourmet-hero-copy>p:not(.eyebrow):not(.breadcrumb):not(.gourmet-name){margin-top:22px;font-size:16px}.hero-links{gap:24px}.hero-links .text-link{font-size:14px;margin-top:18px}.gourmet-hero-visual{padding-top:0;padding-bottom:60px;gap:16px;max-width:440px;width:100%;margin:auto}.gourmet-hero-visual img{width:calc(50% - 8px);box-shadow:0 10px 20px #493e2415}.gourmet-hero-visual img:nth-child(2){transform:translateY(30px)}.gourmet-hero-visual>span{bottom:0;font-size:12px}.social-links{gap:25px}.social-links .external-note{display:none}
 .reel-grid{grid-template-columns:1fr 1fr;gap:32px 17px}.reel-card>p{font-size:16px;margin-top:14px;line-height:1.8}.reel-start{font-size:12px;gap:6px}.reel-start span{font-size:24px}.reel-card>.small-note{font-size:12px!important}.case-grid{grid-template-columns:1fr;gap:40px}.case-shop{margin-top:18px}.case-card h3{font-size:27px;margin-top:8px}.case-image>span{font-size:12px;padding:8px 13px}
 .story-jump{gap:10px 20px;padding-bottom:35px}.story-jump a{font-size:14px}.story-detail{padding:40px 0}.story-detail-head h2{font-size:26px;margin-bottom:24px;letter-spacing:.02em}.story-detail-grid{grid-template-columns:1fr;gap:30px}.story-result h3{font-size:38px;line-height:1.4;margin-bottom:18px}.result-label{margin-bottom:18px}.result-period{font-size:17px;margin-bottom:12px}.interview-image>span{font-size:14px;flex-wrap:wrap;gap:8px;padding:14px 0}.interview-image small{font-size:12px}.story-note{padding-bottom:50px}.story-note p{font-size:12px;line-height:1.9}
}
@media(prefers-reduced-motion:reduce){.case-image img,.contact-option{transition:none}}
/* Audit: keep small editorial numerals legible on both white and pale sections. */
.step-nav span,.strength-list article>span,.job-row>span{color:#62685d}
