/* One image-card component for every level of the corporate hierarchy. */
.visual-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;margin-top:48px}
.visual-card{--card-tone:#72816b;display:flex;flex-direction:column;min-width:0;overflow:hidden;background:#fcfcf8;color:#292f24;border:1px solid #d5d9cf;text-decoration:none;transition:border-color .2s,box-shadow .2s}
.visual-card.accent-clay{--card-tone:#9b7866}.visual-card.accent-slate{--card-tone:#7c8f94}.visual-card.accent-sand{--card-tone:#a29373}
.visual-card-photo{position:relative;aspect-ratio:16/9;overflow:hidden;background:#31392e}
.visual-card-photo img{width:100%;height:100%;object-fit:cover;object-position:64% center;display:block;transition:transform .4s}
.visual-card-number{position:absolute;top:20px;left:20px;display:grid;place-items:center;width:34px;height:34px;border:1px solid #ffffff73;background:#2932248c;color:#fff;font-size:11px;font-weight:600}
.visual-card-body{display:flex;flex-direction:column;flex:1;padding:30px 32px 26px;border-top:4px solid var(--card-tone)}
.visual-card h3{margin:0 0 16px;font-size:clamp(24px,2.2vw,33px);line-height:1.25;font-weight:500;letter-spacing:-.03em;overflow-wrap:normal}
.visual-card p{margin:0 0 28px;font-size:16px;line-height:1.75;color:#586451}
.visual-card-action{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:auto;border-top:1px solid #d5d9cf;padding-top:20px;font-size:13px;font-weight:600;line-height:1.5}
.visual-card-action svg{width:26px;height:26px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.4;transition:transform .2s}
.visual-card:hover{border-color:var(--card-tone);box-shadow:0 10px 24px #2932240d}.visual-card:hover img{transform:scale(1.025)}.visual-card:hover svg{transform:translateX(4px)}
.visual-card:focus-visible{outline:3px solid #536b50;outline-offset:5px}
.category-services{background:#f4efe4}.service-children{background:#f0f2ec}
.category-context{margin:32px 0 0;max-width:80ch;font-size:16px;line-height:1.8;color:#586451}.category-context a{text-underline-offset:4px;color:#2d3f29}
.formats h3 a{text-decoration:none}.formats h3 a:hover{text-decoration:underline;text-underline-offset:5px}
@media(max-width:760px){.visual-card-grid{grid-template-columns:1fr;gap:24px;margin-top:32px}.visual-card-body{padding:24px 22px}.visual-card h3{font-size:27px}.visual-card p{font-size:15px;margin-bottom:24px}.visual-card-photo img{object-position:68% center}.visual-card-number{top:16px;left:16px}.category-context{font-size:15px}.corporate-detail .hero h1{font-size:clamp(28px,8.5vw,48px);overflow-wrap:normal;word-break:normal;hyphens:none}}
@media(prefers-reduced-motion:reduce){.visual-card,.visual-card-photo img,.visual-card-action svg{transition:none}.visual-card:hover img,.visual-card:hover svg{transform:none}}
/* Expanded catalogue: one component, stable image boxes and four-column overview. */
.visual-card-photo img{object-position:var(--focus,50% 50%)}
.visual-card h3{overflow-wrap:break-word;hyphens:auto}
.top-level-cards .visual-card-body{padding:24px 22px}
.top-level-cards .visual-card h3{font-size:25px}
.top-level-cards .visual-card p{font-size:15px;line-height:1.65}
.catalog-related .visual-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.catalog-related .visual-card h3{font-size:25px}
.catalog-related .visual-card-body{padding:24px}
.catalog-related .visual-card p{font-size:15px}
.corporate-detail .hero{position:relative;isolation:isolate;background:#292f24;height:auto;min-height:760px;padding-top:130px;padding-bottom:75px}
.corporate-detail .hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#0d1713ed,#0d17134d),linear-gradient(0deg,#0d171380,transparent)}
.corporate-detail .hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--photo-position,50% 50%);z-index:-2}
.corporate-detail .hero h1{font-size:clamp(40px,5.2vw,74px);line-height:1.06;max-width:1000px;overflow-wrap:normal;hyphens:auto}
.corporate-detail .hero h2{max-width:78ch}
.page-nav{flex-wrap:wrap}
.category-back a{font-size:18px;text-underline-offset:5px}
.entry-links{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:32px}
.entry-links a{display:block;padding:28px;border:1px solid #aab4a5;text-decoration:none;font-size:24px;background:#f4efe4}
.entry-links span{display:block;font-size:16px;line-height:1.7;margin-top:18px;color:#52614f}
.request-draft{display:block!important;text-align:left;max-width:760px;margin:44px auto 0!important;padding:28px;border:1px solid #bdc6b6;background:#fafbf7}
.request-draft h3{font-size:23px;line-height:1.3;margin:0 0 16px;font-weight:500}
.request-draft .draft-note{font-size:15px;line-height:1.7;color:#52614f;margin:0 0 22px}
.request-draft label{display:block;font-size:15px;line-height:1.5;margin:20px 0}
.request-draft input,.request-draft textarea{display:block;width:100%;padding:12px;margin-top:8px;border:1px solid #9ba695;border-radius:0;background:white;color:#292f24;font:16px/1.5 Manrope,Arial,sans-serif;resize:vertical}
.request-draft button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:14px 20px;border:1px solid #292f24;background:#292f24;color:#fff;font:600 14px/1.5 Manrope,Arial,sans-serif;cursor:pointer}
.request-draft .draft-status{margin:20px 0 0;font-size:15px;line-height:1.7;color:#374a31}
.request-draft :is(input,textarea,button):focus-visible,.entry-links a:focus-visible,.category-back a:focus-visible{outline:3px solid #72816b;outline-offset:4px}
.draft-result[hidden]{display:none}
.illustration-note{font-size:10px;color:#c8d1c4}
.corporate-detail footer{gap:30px}
@media(min-width:1200px){.top-level-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.top-level-cards .visual-card-body{padding:20px 18px}.top-level-cards .visual-card h3{font-size:clamp(19px,1.45vw,25px)}.top-level-cards .visual-card p{font-size:14px}.top-level-cards .visual-card-number{top:12px;left:12px}}
@media(min-width:761px) and (max-width:1100px){.catalog-related .visual-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.corporate-detail .hero{min-height:650px;padding:112px 6vw 48px}.corporate-detail .hero h1{font-size:clamp(29px,8.2vw,48px);line-height:1.08}.corporate-detail .hero-photo{object-position:var(--photo-position-mobile,50% 50%)}.visual-card-photo img{object-position:var(--focus-mobile,50% 50%)}.catalog-related .visual-card-grid,.entry-links{grid-template-columns:1fr}.top-level-cards .visual-card h3,.catalog-related .visual-card h3{font-size:26px}.request-draft{padding:22px 18px}.request-draft button{width:100%}.entry-links a{padding:24px;font-size:22px}.corporate-detail footer{display:block}.corporate-detail .breadcrumbs{gap:6px}.page-nav{gap:10px 20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

#services:has(.top-level-cards) .section-head {
  display: block;
}
#services:has(.top-level-cards) .section-head h2 {
  font-size: clamp(32px, 4.2vw, 58px);
}
