/* A letter from the president, set apart from the company facts. */
.company-page .president-message{position:relative;padding:72px clamp(20px,5.2vw,92px) 70px;margin:42px 0 45px;background:#f2eadc;border:0;border-top:3px solid #994535;overflow:hidden}
.president-message:before{content:"";position:absolute;left:22px;right:22px;top:18px;bottom:18px;border:1px solid #d5c5ae;pointer-events:none}
.president-message>*{position:relative}
.president-message .message-heading{padding-bottom:42px;border-bottom:1px solid #cebaa1}
.president-message .message-heading .eyebrow{font-family:var(--sans);font-size:17px!important;letter-spacing:.17em;margin:0 0 30px}
.company-page .president-message h2{font-size:clamp(34px,4.2vw,60px);font-weight:400;letter-spacing:.055em;line-height:1.6;margin:0;white-space:normal}
.president-message h2 span{display:block}
.president-message .message-title-accent{color:#994535;margin-left:.7em}
.president-message .message-opening{padding:38px 0 42px;max-width:1080px}
.president-message .message-opening p{font-family:var(--serif);font-size:clamp(21px,1.85vw,26px)!important;line-height:2.05!important;letter-spacing:.035em;font-weight:500}
.president-message .message-body{max-width:900px;margin-left:auto;padding-top:8px}
.president-message .message-body p{font-size:20px!important;line-height:2.15!important;letter-spacing:.015em;overflow-wrap:anywhere}
.president-message .message-body p+p{margin-top:32px}
.president-message .message-closing{margin-top:50px;padding:10px 0 10px 32px;border-left:2px solid #ac6a48;max-width:1040px}
.president-message .message-closing .message-promise{font-family:var(--serif);font-size:clamp(22px,2.2vw,31px)!important;line-height:1.9!important;letter-spacing:.04em;margin:0 0 22px}
.president-message .message-closing>p:last-child{font-size:20px!important;line-height:2.05!important}
.president-message .message-signature{margin:44px 0 0 auto;text-align:right}
.president-message .message-signature p{font-size:18px!important;line-height:1.8!important}
.president-message .message-signature p+p{margin-top:10px}
.president-message .message-signature span{font-size:17px;margin-right:20px}
.president-message .message-signature strong{font-family:var(--serif);font-size:30px;font-weight:500;letter-spacing:.1em;white-space:nowrap}
.company-page .factory-exterior img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center;border:0}
.company-page .factory-exterior figcaption{margin-top:14px;color:#756353;letter-spacing:.1em}
@media(max-width:900px){
 .company-page .president-message{padding:56px 40px 55px}
 .president-message .message-body{margin-left:0}
 .president-message .message-closing{padding-left:24px}
}
@media(max-width:600px){
 .company-page .president-message{margin:30px -2% 28px;padding:38px 7% 40px}
 .president-message:before{inset:10px}
 .president-message .message-heading{padding-bottom:28px}
 .president-message .message-heading .eyebrow{font-size:15px!important;margin-bottom:22px;letter-spacing:.08em}
 .company-page .president-message h2{font-size:clamp(26px,6.6vw,34px);letter-spacing:.025em;line-height:1.8}
 .president-message .message-title-accent{margin-left:.35em}
 .president-message .message-opening{padding:27px 0 30px}
 .president-message .message-opening p{font-size:21px!important;line-height:1.95!important;letter-spacing:.015em}
 .president-message .message-body p,.president-message .message-closing>p:last-child{font-size:18px!important;line-height:2.05!important;letter-spacing:.01em}
 .president-message .message-body p+p{margin-top:27px}
 .president-message .message-break{display:none}
 .president-message .message-closing{margin-top:35px;padding-left:18px}
 .president-message .message-closing .message-promise{font-size:22px!important;letter-spacing:.015em;margin-bottom:18px}
 .president-message .message-closing .message-promise br{display:none}
 .president-message .message-signature{margin-top:35px}
 .president-message .message-signature p{font-size:16px!important}
 .president-message .message-signature span{font-size:15px;margin-right:14px}
 .president-message .message-signature strong{font-size:26px;letter-spacing:.08em}
}
/* Company facts balance a typographic heritage panel without a second photograph. */
.company-page #overview{padding-top:65px;padding-bottom:70px}
.company-page .company-overview{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(40px,6vw,100px)}
.company-overview .overview-story{padding:36px 32px 38px;background:#eee4d4;border-top:2px solid #ac6a48}
.overview-story>.eyebrow{margin-bottom:24px}
.company-page .overview-story h2{font-size:clamp(28px,2.7vw,40px);line-height:1.75;letter-spacing:.04em;margin-bottom:24px}
.overview-story>p:not(.eyebrow){font-size:20px!important;line-height:2.05!important}
.overview-founded{border-top:1px solid #cdbba3;margin-top:34px;padding-top:28px}
.overview-founded p{font-size:17px!important;letter-spacing:.14em;line-height:1.7!important}
.overview-founded>span{display:block;font-family:var(--serif);font-size:clamp(70px,8vw,116px);line-height:1.2;letter-spacing:-.025em;color:#994535;margin:10px 0 18px}
.overview-story>.textlink{font-size:17px;line-height:1.7;margin-top:25px;min-height:0}
.company-page .company-overview .company-facts{border-top:1px solid #b3997b}
.company-page .company-overview .company-facts>div{grid-template-columns:120px minmax(0,1fr);padding:23px 0;gap:25px}
@media(max-width:1000px){
 .company-page .company-overview{grid-template-columns:1fr;gap:40px}
 .company-overview .overview-story{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:35px;padding:32px}
 .overview-story>.eyebrow,.overview-story>h2,.overview-story>p,.overview-story>.textlink{grid-column:1}
 .overview-story>.overview-founded{grid-column:2;grid-row:1/5;border-top:0;border-left:1px solid #cdbba3;padding:10px 0 10px 35px;margin:0;align-self:center}
 .overview-founded>span{font-size:82px}
}
@media(max-width:600px){
 .company-page #overview{padding-top:35px;padding-bottom:40px}
 .company-overview .overview-story{display:block;padding:30px 23px}
 .company-page .overview-story h2{font-size:28px;margin-bottom:20px}
 .overview-story>p:not(.eyebrow){font-size:18px!important}
 .overview-story>.overview-founded{border:0;border-top:1px solid #cdbba3;padding:22px 0 0;margin-top:25px}
 .overview-founded>span{font-size:80px;margin:8px 0 12px}
 .company-page .company-overview .company-facts>div{grid-template-columns:1fr;gap:7px;padding:20px 0}
}
