.company-button:focus-visible,.company-accordion summary:focus-visible { outline:2px solid #8b5c39; outline-offset:-3px; }
#companyMain { background:#faf8f2; }
.company-hero { display:grid; grid-template-columns:1fr 1fr; min-height:430px; background:#eee7d9; }
.company-hero-copy { padding:60px 10% 58px; align-self:center; }
.company-eyebrow { font-size:10px; letter-spacing:2.3px; color:#987349; margin-bottom:16px; font-weight:600; }
.company-hero h1,.company-contact-hero h1 { font:400 clamp(36px,4.2vw,62px)/1.08 Georgia,serif; color:#2a281f; letter-spacing:-1px; margin-bottom:24px; }
.company-hero h1:focus,.company-contact-hero h1:focus { outline:none; }
.company-hero-copy > p:not(.company-eyebrow) { font-size:14px; line-height:1.9; color:#736b5e; max-width:540px; }
.company-hero > img { height:100%; min-height:430px; width:100%; object-fit:cover; }
.company-button { display:inline-flex; align-items:center; justify-content:space-between; gap:22px; padding:15px 22px; border:1px solid #75482e; background:#75482e; border-radius:4px; color:#fff; font:12px Arial,sans-serif; cursor:pointer; }
.company-hero .company-button { margin-top:25px; }
.company-button:hover { background:#53331f; }
.company-stats { display:grid; grid-template-columns:repeat(4,1fr); padding:34px 6%; background:#2c3026; color:#f7f1e5; }
.company-stats > div { padding:4px 25px; border-right:1px solid #ffffff26; }
.company-stats > div:last-child { border:0; }
.company-stats strong { display:block; font:40px Georgia,serif; }
.company-stats span { display:block; font-size:10px; color:#d0c6b3; letter-spacing:1px; margin-top:10px; }
.company-section { padding:55px 6%; }
.company-tinted { background:#f0ebe0; }
.company-section-heading { margin-bottom:28px; }
.company-section h2 { font:400 clamp(26px,3vw,40px)/1.2 Georgia,serif; color:#3a3429; }
.company-section p { line-height:1.85; }
.company-capacity-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.company-capacity-grid article { border:1px solid #ddd3c2; border-radius:6px; padding:25px; background:#fffdf8; }
.company-capacity-grid h3 { font-size:12px; font-weight:400; min-height:44px; color:#75644d; }
.company-capacity-grid strong { display:inline-block; font:34px Georgia,serif; color:#58472e; margin-right:10px; }
.company-capacity-grid span { font-size:10px; color:#8b7c65; }
.company-note { font-size:11px; color:#968975; margin-top:22px; max-width:950px; }
.company-photo-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.company-photo-grid figure { margin:0; }
.company-photo-grid img { aspect-ratio:4/3; object-fit:cover; border-radius:5px; }
.company-photo-grid figcaption { padding:12px 0; font-size:12px; color:#786344; }
.company-two-col,.company-three-col { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:26px; }
.company-three-col { grid-template-columns:repeat(3,minmax(0,1fr)); }
.company-photo-grid + .company-two-col,.company-category-list + .company-two-col { margin-top:28px; }
.company-card { border-top:1px solid #cfc3ad; padding:23px 0 6px; }
.company-index { font-size:11px; color:#ad8d5f; }
.company-card h3 { font:24px Georgia,serif; margin:16px 0 12px; color:#473c2c; }
.company-card p { font-size:13px; color:#80725e; }
.company-accordion { margin-top:25px; border:1px solid #d8cdbb; border-radius:5px; background:#fffdf8; }
.company-accordion summary { cursor:pointer; padding:22px; font-size:15px; color:#57452c; }
.company-accordion summary span { font-size:11px; color:#968166; margin-left:18px; }
.company-table-scroll { overflow:auto; padding:0 22px 22px; max-height:560px; }
.company-table-scroll table { border-collapse:collapse; width:100%; font-size:11px; text-align:left; }
.company-table-scroll caption { text-align:left; padding:10px 0; color:#918069; }
.company-table-scroll th,.company-table-scroll td { padding:12px 10px; border-bottom:1px solid #e5dccd; vertical-align:top; }
.company-table-scroll th { background:#eee6d6; }
.company-table-scroll td small { display:block; color:#96866d; font-size:9px; margin-top:5px; }
.company-team { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; padding:10px 25px 25px; }
.company-team h3 { font-size:13px; color:#695138; }
.company-team p { font-size:11px; color:#8b7a62; margin-top:5px; }
.company-category-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.company-category-list > div { padding:25px; background:#ede6d8; border-radius:5px; }
.company-category-list span { color:#a08258; font-size:10px; }
.company-category-list h3 { font:21px Georgia,serif; color:#665139; margin-top:12px; }
.company-inquiry-layout { display:grid; grid-template-columns:.8fr 1.2fr; gap:8%; align-items:start; }
.company-inquiry-layout > div > p { font-size:13px; color:#7b6b55; }
.company-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:17px; }
.company-form label { display:flex; flex-direction:column; gap:8px; font-size:12px; color:#75624a; }
.company-form input,.company-form textarea,.company-form select { width:100%; min-width:0; padding:12px; border:1px solid #cfc4b2; border-radius:4px; font:16px Arial,sans-serif; color:#463827; background:#fffdf8; }
.company-form textarea { resize:vertical; }
.company-form :focus-visible { outline:2px solid #94714c; outline-offset:2px; }
.company-full { grid-column:1/-1; }
.company-draft-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:15px; }
.company-draft-actions button { background:transparent; border:1px solid #aa906c; padding:10px 16px; border-radius:4px; cursor:pointer; color:#775b3e; }
#copyStatus { font-size:12px; margin-top:8px; }
.company-contact-hero { text-align:center; max-width:850px; margin:auto; padding:64px 25px 20px; }
.company-contact-hero > p:last-child { color:#8a7962; font-size:14px; }
.company-offices { display:grid; grid-template-columns:1fr 1fr; gap:28px; }
.company-office { padding:35px; border:1px solid #ded3c0; border-radius:6px; background:#fffdf8; }
.company-office h2 { font-size:32px; margin-bottom:20px; }
.company-office-purpose { color:#8a7559; font-size:12px; min-height:48px; }
.company-office dl { margin-top:26px; }
.company-office dt { font-size:10px; color:#a28966; text-transform:uppercase; letter-spacing:1.2px; margin:18px 0 5px; }
.company-office dd { font-size:14px; color:#65513a; overflow-wrap:anywhere; }
.company-office dd a:hover { text-decoration:underline; }
.company-office-actions { display:flex; align-items:center; flex-wrap:wrap; gap:20px; margin-top:28px; }
.company-map-link { font-size:12px; color:#937047; text-decoration:underline; }
.company-contact-cta { background:#eae2d2; display:flex; align-items:center; justify-content:space-between; gap:28px; }
.company-contact-cta p { font-size:13px; color:#8b7557; margin-top:12px; }
.company-noscript { padding:35px; }
@media(max-width:900px) { .company-hero { grid-template-columns:1fr 1fr; } .company-hero-copy { padding:35px 8%; } .company-hero > img { min-height:360px; } .company-stats { padding:25px 4%; } .company-stats > div { padding:4px 14px; } .company-stats strong { font-size:32px; } .company-team { grid-template-columns:1fr 1fr; } .company-inquiry-layout { gap:5%; grid-template-columns:1fr 1fr; } }
@media(max-width:650px) { .company-hero { grid-template-columns:1fr; } .company-hero-copy { padding:38px 6%; } .company-hero h1 { font-size:38px; } .company-hero > img { min-height:0; height:240px; } .company-stats { grid-template-columns:1fr 1fr; gap:24px 0; } .company-stats > div:nth-child(2) { border:0; } .company-section { padding:36px 6%; } .company-capacity-grid,.company-category-list { grid-template-columns:1fr 1fr; } .company-capacity-grid article { padding:17px; } .company-capacity-grid strong { font-size:28px; } .company-two-col,.company-three-col,.company-photo-grid,.company-offices,.company-inquiry-layout { grid-template-columns:1fr; } .company-photo-grid { gap:15px; } .company-contact-cta { align-items:flex-start; flex-direction:column; } .company-office { padding:24px; } .company-inquiry-layout { gap:25px; } .company-form { gap:15px 10px; } .company-team { grid-template-columns:1fr; } }
@media(prefers-reduced-motion:reduce){html { scroll-behavior:auto; }}