/* Corporate pages share the homepage shell; storefront and checkout CSS stay isolated. */
.shm-corporate-main { color:var(--sino-navy); background:var(--sino-paper); }
.shm-corporate-main > div { width:100%; margin:0; font-family:var(--shm-sans); }
.shm-corporate-main p { color:#48505a; font-size:15px; line-height:1.85; }
.shm-corporate-main p + p { margin-top:16px; }
.shm-corporate-main h1 { color:var(--sino-burgundy); font-size:clamp(44px,4.7vw,76px); line-height:1.07; letter-spacing:-.05em; margin:0 0 26px; }
.shm-corporate-main h2 { font-size:clamp(34px,3.6vw,56px); line-height:1.13; letter-spacing:-.04em; margin:0 0 26px; }
.shm-corporate-main h3 { font-size:clamp(26px,2.3vw,36px); line-height:1.18; letter-spacing:-.025em; margin:0 0 18px; }
.shm-corporate-main :is(h1,h2,h3) { overflow-wrap:anywhere; hyphens:auto; }
.shm-corporate-main:lang(en) :is(h1,h2,h3) { hyphens:manual; }
.shm-corporate-main [class*="-shell"] { width:auto; max-width:none; margin:0 var(--shm-panel-padding); }
.shm-corporate-main section { padding:88px 0; scroll-margin-top:64px; }
.shm-corporate-main p[class*="-eyebrow"] { display:block; margin:0 0 22px; color:var(--sino-burgundy); font-size:10px; font-weight:600; line-height:1.5; letter-spacing:.13em; text-transform:uppercase; }
.shm-corporate-main [class$="-hero"] { position:relative; display:grid; grid-template-columns:minmax(0,1.12fr) minmax(0,1fr); align-items:center; gap:28px clamp(36px,5vw,80px); padding:56px var(--shm-panel-padding) 80px; }
.shm-corporate-main [class$="-hero"] > [class*="-shell"] { grid-column:1; grid-row:1; margin:0; }
.shm-corporate-main [class$="-hero"]::before { content:''; grid-column:2; grid-row:1 / span 2; align-self:stretch; min-height:430px; border-radius:8px; background:var(--shm-inner-hero-image) var(--shm-inner-hero-position,50% 50%) / cover; }
.shm-about-hero { --shm-inner-hero-image:var(--shm-about-hero-image); --shm-inner-hero-position:var(--shm-about-hero-position); }
.shm-services-hero { --shm-inner-hero-image:var(--shm-services-hero-image); --shm-inner-hero-position:var(--shm-services-hero-position); }
.shm-projects-hero { --shm-inner-hero-image:var(--shm-projects-hero-image); --shm-inner-hero-position:var(--shm-projects-hero-position); }
.shm-contact-page-hero { --shm-inner-hero-image:var(--shm-contact-page-hero-image); --shm-inner-hero-position:var(--shm-contact-page-hero-position); }
.shm-corporate-main [class$="-scroll"] { grid-column:1; grid-row:2; justify-self:start; display:inline-flex; align-items:center; gap:16px; font-size:11px; letter-spacing:.08em; padding:12px 0; color:var(--sino-burgundy); }
.shm-corporate-main [class$="-scroll"] span { font-size:20px; }
.shm-corporate-main :is(.shm-about-story__grid,.shm-about-heading,.shm-about-showroom__grid,.shm-services-intro__grid,.shm-services-heading,.shm-services-showroom__grid,.shm-projects-intro__grid,.shm-contact-page-direct__grid,.shm-contact-page-message__grid,.shm-contact-page-showroom__grid) { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(40px,7vw,112px); align-items:center; }
.shm-corporate-main [class$="__media"] { overflow:hidden; border-radius:8px; min-width:0; }
.shm-corporate-main [class$="__media"] img { display:block; width:100%; height:auto; aspect-ratio:1.12; object-fit:cover; }
.shm-corporate-main .shm-about-story__mark { display:none; }
.shm-corporate-main :is(.shm-about-metrics,.shm-services-contact,.shm-projects-contact,.shm-about-cta__details) { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; margin-top:64px; padding-top:28px; border-top:1px solid #840d0720; }
.shm-corporate-main .shm-about-metrics { border:0; padding-top:0; }
.shm-corporate-main .shm-about-metrics strong { display:block; color:var(--sino-burgundy); font-family:var(--shm-serif); font-size:clamp(54px,6vw,88px); font-weight:400; letter-spacing:-.05em; }
.shm-corporate-main .shm-about-metrics span { display:block; margin-top:12px; font-size:12px; color:#48505a; }
.shm-corporate-main :is(.shm-about-range,.shm-services-areas,.shm-projects-list,.shm-contact-page-message) { background:linear-gradient(180deg,var(--sino-paper),#eee8e4 50%,var(--sino-paper)); }
.shm-corporate-main .shm-about-range__layout { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:56px; margin-top:56px; }
.shm-corporate-main .shm-about-range__media img { height:100%; aspect-ratio:auto; min-height:400px; }
.shm-corporate-main :is(.shm-about-range__grid,.shm-services-area-grid) { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:48px; }
.shm-corporate-main .shm-services-area-grid { margin-top:56px; }
.shm-corporate-main :is(.shm-about-range-card,.shm-services-area-card) { padding:0; min-width:0; }
.shm-corporate-main :is(.shm-about-range-card,.shm-services-area-card,.shm-services-process__grid > article) > span { display:block; color:var(--sino-burgundy); font-family:var(--shm-serif); font-size:38px; margin-bottom:18px; }
.shm-corporate-main :is(.shm-about-tradition,.shm-services-process) { background:#eae5df; }
.shm-corporate-main .shm-about-tradition__grid { display:grid; grid-template-columns:.45fr 1fr; align-items:center; gap:64px; }
.shm-corporate-main .shm-about-tradition__number { font-family:var(--shm-serif); font-size:clamp(100px,14vw,220px); line-height:1; color:var(--sino-burgundy); letter-spacing:-.065em; }
.shm-corporate-main .shm-services-process__heading { max-width:760px; }
.shm-corporate-main .shm-services-process__grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:36px; margin-top:56px; }
.shm-corporate-main .shm-services-process__grid h3 { font-size:28px; }
.shm-corporate-main .shm-projects-heading { max-width:800px; margin-bottom:56px; }
.shm-corporate-main .shm-projects-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:72px 40px; }
.shm-corporate-main .shm-project-card { min-width:0; }
.shm-corporate-main .shm-project-card__media { position:relative; }
.shm-corporate-main .shm-project-card__media img { aspect-ratio:1.35; }
.shm-corporate-main .shm-project-card__media > span { display:none; }
.shm-corporate-main .shm-project-card__copy { padding-top:28px; }
.shm-corporate-main .shm-project-card__meta { display:flex; flex-wrap:wrap; gap:8px 16px; font-size:9px; letter-spacing:.08em; color:var(--sino-burgundy); margin-bottom:18px; }
.shm-corporate-main .shm-project-card__scope { margin-top:24px; }
.shm-corporate-main .shm-project-card__scope strong { display:block; color:var(--sino-burgundy); font-size:10px; margin-bottom:8px; }
.shm-corporate-main .shm-project-card__scope > span { font-size:13px; line-height:1.8; color:#48505a; }
.shm-corporate-main :is(.shm-about-cta,.shm-services-cta,.shm-projects-cta,.shm-contact-page-closing) { background:linear-gradient(180deg,var(--sino-paper),#eee8e4); }
.shm-corporate-main :is(.shm-about-cta__top,.shm-services-cta__top,.shm-projects-cta__top) { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:56px; }
.shm-corporate-main :is(.shm-about-cta,.shm-services-cta,.shm-projects-cta,.shm-contact-page-closing) h2 { color:var(--sino-burgundy); }
.shm-corporate-main :is(.shm-about-contact-item,.shm-services-contact > div,.shm-projects-contact > div,.shm-contact-page-details > div) > span { display:block; color:var(--sino-burgundy); font-size:10px; letter-spacing:.08em; margin-bottom:14px; }
.shm-corporate-main :is(address,.shm-about-contact-item > a,.shm-services-contact a,.shm-projects-contact a) { font-size:15px; font-style:normal; line-height:1.8; overflow-wrap:anywhere; }
.shm-corporate-main :is(.shm-about-socials,.shm-contact-page-details__social nav) { display:flex; gap:12px; flex-wrap:wrap; }
.shm-corporate-main :is(.shm-about-socials,.shm-contact-page-details__social nav) a { width:40px; height:40px; display:grid; place-items:center; }
.shm-corporate-main svg { width:20px; height:20px; }
.shm-corporate-main :is(.shm-about-button,.shm-services-button,.shm-projects-button,.shm-contact-page-button,.shm-contact-page-submit) { position:relative; isolation:isolate; display:inline-flex; align-items:center; justify-content:center; gap:22px; min-height:70px; width:fit-content; max-width:100%; margin:16px 0 0; padding:12px 22px; border:0; box-shadow:none; background:transparent; color:var(--sino-navy); font-size:13px; font-weight:400; line-height:1.5; letter-spacing:0; text-transform:none; }
.shm-corporate-main :is(.shm-about-button,.shm-services-button,.shm-projects-button,.shm-contact-page-button,.shm-contact-page-submit)::before { content:''; position:absolute; left:50%; top:50%; width:70px; height:70px; transform:translate(-50%,-50%); z-index:-1; border:1.5px solid var(--sino-burgundy); border-radius:999px; transition:width .75s cubic-bezier(.22,1,.36,1),background-color .75s; }
.shm-corporate-main :is(.shm-about-button,.shm-services-button,.shm-projects-button,.shm-contact-page-button,.shm-contact-page-submit):is(:hover,:focus-visible) { color:#fff; }
.shm-corporate-main :is(.shm-about-button,.shm-services-button,.shm-projects-button,.shm-contact-page-button,.shm-contact-page-submit):is(:hover,:focus-visible)::before { width:100%; background:var(--sino-burgundy); }
.shm-corporate-main :is(.shm-about-button,.shm-services-button,.shm-projects-button,.shm-contact-page-button,.shm-contact-page-submit) b { font-size:22px; font-weight:400; }
.shm-corporate-main .shm-contact-page-details { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; }
.shm-corporate-main .shm-contact-page-details strong { display:block; font-size:15px; margin-bottom:8px; }
.shm-corporate-main .shm-contact-page-details a { font-size:17px; overflow-wrap:anywhere; }
.shm-corporate-main .shm-contact-page-message__heading { max-width:740px; margin-bottom:48px; }
.shm-corporate-main .shm-contact-page-message__grid { align-items:stretch; gap:48px; }
.shm-corporate-main .shm-contact-page-form { margin:0; padding:32px; background:#ffffff78; border-radius:8px; }
.shm-corporate-main .shm-contact-page-form__row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.shm-corporate-main .shm-contact-page-form label { display:block; margin-bottom:22px; font-size:12px; font-weight:400; }
.shm-corporate-main .shm-contact-page-form label > span { display:block; margin-bottom:10px; }
.shm-corporate-main .shm-contact-page-form :is(input,textarea) { width:100%; height:auto; min-height:48px; margin:0; padding:12px; border:1px solid #051d3c26; border-radius:4px; background:#fff; box-shadow:none; color:var(--sino-navy); font:inherit; }
.shm-corporate-main .shm-contact-page-form textarea { resize:vertical; }
.shm-corporate-main .shm-contact-page-form :is(input,textarea):focus { outline:2px solid var(--sino-burgundy); outline-offset:2px; }
.shm-corporate-main .shm-contact-page-form small { display:block; margin-top:20px; font-size:11px; line-height:1.7; color:#59616b; }
.shm-corporate-main .shm-contact-page-map { min-height:480px; height:100%; overflow:hidden; border-radius:8px; background:#e6e0da; }
.shm-corporate-main .shm-contact-page-map iframe { display:block; width:100%; height:100%; min-height:480px; border:0; }
.shm-corporate-main .shm-map-consent { display:grid; place-items:center; padding:32px; text-align:center; }
.shm-corporate-main .shm-map-consent__inner { max-width:330px; }
.shm-corporate-main .shm-map-consent__mark { display:block; font-size:32px; color:var(--sino-burgundy); margin-bottom:20px; }
.shm-corporate-main .shm-map-consent__inner strong { display:block; font-family:var(--shm-serif); font-size:30px; font-weight:400; margin-bottom:16px; }
.shm-corporate-main .shm-map-consent__inner p { font-size:13px; }
.shm-corporate-main .shm-map-consent__inner button { margin:24px 0 0; padding:10px 20px; min-height:44px; border:0; border-radius:4px; background:var(--sino-burgundy); color:white; font-size:12px; font-weight:400; text-transform:none; }
.shm-corporate-main .shm-map-consent.is-loaded { display:block; padding:0; }
.shm-corporate-main .shm-contact-page-closing__grid { max-width:850px; }
.shm-corporate-main .shm-contact-page-b2b { font-size:12px; margin-top:20px; }
@media (max-width:900px) {
  .shm-corporate-main section { padding:64px 0; }
  .shm-corporate-main [class$="-hero"] { gap:28px; padding:40px var(--shm-panel-padding) 56px; }
  .shm-corporate-main [class$="-hero"]::before { min-height:370px; }
  .shm-corporate-main :is(.shm-services-process__grid,.shm-about-range__layout) { grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; }
  .shm-corporate-main .shm-about-range__grid { grid-template-columns:1fr; gap:32px; }
  .shm-corporate-main :is(.shm-about-cta__top,.shm-services-cta__top,.shm-projects-cta__top) { grid-template-columns:1fr; gap:24px; }
  .shm-corporate-main .shm-contact-page-message__grid { grid-template-columns:1fr; }
}
@media (max-width:600px) {
  .shm-brand-wordmark .shm-brand-logo { max-width:170px; max-height:48px; }
  .shm-corporate-main h1 { font-size:43px; }
  .shm-corporate-main h2 { font-size:34px; }
  .shm-corporate-main [class$="-hero"] { grid-template-columns:1fr; padding:32px 24px 48px; }
  .shm-corporate-main [class$="-hero"]::before { grid-column:1; grid-row:3; min-height:0; aspect-ratio:1.4; }
  .shm-corporate-main section { padding:48px 0; }
  .shm-corporate-main [class*="-shell"] { margin:0 24px; }
  .shm-corporate-main :is([class$="__grid"],.shm-about-heading,.shm-services-heading,.shm-projects-grid,.shm-about-range__layout,.shm-services-area-grid,.shm-about-range__grid) { grid-template-columns:1fr; gap:32px; }
  .shm-corporate-main :is(.shm-about-metrics,.shm-services-contact,.shm-projects-contact,.shm-about-cta__details) { grid-template-columns:1fr; gap:28px; margin-top:40px; }
  .shm-corporate-main .shm-about-metrics { grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
  .shm-corporate-main .shm-about-metrics strong { font-size:46px; }
  .shm-corporate-main .shm-about-metrics span { font-size:10px; }
  .shm-corporate-main .shm-about-range__media img { min-height:0; aspect-ratio:1.2; }
  .shm-corporate-main .shm-contact-page-form { padding:24px; }
  .shm-corporate-main .shm-contact-page-form__row { grid-template-columns:1fr; gap:0; }
}
@media (prefers-reduced-motion:reduce) { .shm-corporate-main * { animation:none !important; transition:none !important; } }
