/* GRO Premium R2 — refinement layer for owner review.
   Presentation only: texts, links, photographs and the supplied logo artwork stay unchanged.
   Loaded after identity.css. Every motion rule is disabled for prefers-reduced-motion. */
:root{
 --gro-night:#17211f;--gro-forest:#1c2b27;--gro-footer:#131c1a;
 --gro-paper:#f0f0e9;--gro-mineral:#e8ecdf;--gro-sage:#dde6d2;
 --gro-accent:#b4df91;--gro-accent-hover:#c6e8a6;--gro-leaf:#5d8c45;--gro-leaf-deep:#45663d;
 --gro-steel:#3e4a45;--gro-rule:#c3ccbd;--gro-ease:cubic-bezier(.2,.7,.2,1);
}

/* 1. Typography: Segoe UI stays on Windows; macOS/iOS/Android use their system face instead of Arial. */
body.variant-d{font-family:"Segoe UI",system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;}
/* Index numbers use the site face with tabular figures instead of Consolas/Courier. */
body.variant-d :is(.principles>div>span,.p6-card-number,.industrial-index,.steps li>span){
 font-family:inherit;font-variant-numeric:tabular-nums;font-weight:650;letter-spacing:.08em;
}
body.variant-d .industrial-index{font-size:.8rem;}
body.variant-d .p6-portfolio-card .p6-card-number{font-size:.8rem;margin-bottom:18px;}

/* 2. Header: a drawn chevron instead of the "⌄" glyph (rendered as a letter v), calm dropdown entry. */
body.variant-d .services-nav summary{padding-right:20px;}
body.variant-d .services-nav summary:after{
 content:"";position:absolute;right:3px;top:50%;width:6px;height:6px;margin-top:-5px;
 border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;
 transform:rotate(45deg);opacity:.6;transition:transform .2s var(--gro-ease),opacity .2s;
}
body.variant-d .services-nav[open] summary:after{transform:rotate(225deg);margin-top:-1px;opacity:1;}
body.variant-d .services-nav summary:hover:after{opacity:1;}
body.variant-d .site-header nav>a:not(.header-contact),body.variant-d .services-nav summary{transition:color .2s;}
body.variant-d .site-header nav>a:not(.header-contact):hover,body.variant-d .services-nav summary:hover{color:var(--gro-leaf-deep);}
body.variant-d .site-header nav>a[aria-current=page]:not(.header-contact){color:var(--gro-leaf-deep);}
@media(min-width:1081px){
 body.variant-d .services-nav[open]>.dropdown{animation:gro-drop .18s var(--gro-ease);}
}
@keyframes gro-drop{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
/* Between the menu breakpoint and 1240 px the German navigation pushed "Kontakt" off screen. */
@media(min-width:1081px) and (max-width:1240px){
 body.variant-d .site-header .header-inner{width:calc(100% - 48px);gap:20px;}
 body.variant-d .site-header .brand{width:196px;}
 body.variant-d .site-header #site-nav{gap:13px;}
 body.variant-d .site-header nav>a:not(.header-contact),body.variant-d .services-nav summary{font-size:.84rem;}
 body.variant-d .services-nav summary{padding-right:17px;}
 body.variant-d .site-header .languages{gap:0;}
 body.variant-d .site-header .languages a{min-width:34px;padding:6px 2px;}
 body.variant-d .site-header .header-contact{padding:12px 14px;white-space:nowrap;}
}

/* 3. Hero: one label level less on Home (the decorative "GRO / 01" marker is aria-hidden and already hidden on phones). */
body.variant-d .home-hero .d-hero-marker{display:none;}

/* Working together: each step was numbered twice ("GRO / 01" above "1 · …"); the heading keeps the number. */
body.variant-d[data-page="process"] .company-chapter .eyebrow{display:none;}

/* 4. Section rhythm: the same light tones and dark bands everywhere instead of six near-identical tints. */
body.variant-d :is(.p6-portfolio,.p6-related,.p6-start,.company-gateway,.recovery-depth){background:var(--gro-mineral);}
body.variant-d :is(.industrial-models,.recovery-result){background:var(--gro-sage);}
body.variant-d :is(.approach-section,.contact-band,.steps-section.industrial-work,.p6-integration,.p6-engine){background:var(--gro-forest);}

/* 5. Home: the independence note had no spacing below the service cards; the approach index wrapped to "0 / 3". */
body.variant-d .p6-independence{margin:30px 0 0;padding-top:18px;border-top:1px solid var(--gro-rule);max-width:none;font-size:.98rem;color:#46574d;}
body.variant-d .principles>div>span{flex:0 0 2.6em;white-space:nowrap;font-size:.8rem;padding-top:.5em;}

/* 6. Service cards: photograph and arrow respond to pointer and keyboard focus. */
body.variant-d .p6-card-media{overflow:hidden;}
body.variant-d .p6-card-media img{transition:transform .8s var(--gro-ease);}
body.variant-d .p6-portfolio-card:is(:hover,:focus-visible) .p6-card-media img{transform:scale(1.035);}
body.variant-d .p6-card-link>span:last-child{transition:transform .25s var(--gro-ease);}
body.variant-d .p6-portfolio-card:is(:hover,:focus-visible) .p6-card-link>span:last-child{transform:translate(3px,-3px);color:var(--gro-accent);}
body.variant-d .p6-portfolio-card:focus-visible{outline:3px solid var(--gro-accent);outline-offset:4px;}

/* 7. Text links and buttons: one underline language, a short arrow movement, visible focus. */
body.variant-d .text-link{transition:color .2s,border-color .2s;}
body.variant-d :is(.text-link,.button,.header-contact)>span[aria-hidden]{display:inline-block;transition:transform .25s var(--gro-ease);}
body.variant-d .text-link:hover>span[aria-hidden]{transform:translateX(3px);}
body.variant-d :is(.button,.text-link,.header-contact,.company-contents a,.recovery-card-grid a,.company-links a):focus-visible{outline:3px solid var(--gro-leaf);outline-offset:3px;}
body.variant-d :is(.hero,.contact-band,.approach-section,.steps-section.industrial-work,.site-footer) :is(.button,.text-link,a):focus-visible{outline-color:var(--gro-accent);}
body.variant-d .button:hover{background:var(--gro-accent-hover);border-color:var(--gro-accent-hover);}

/* 8. "Further services" on Home/Services: open columns with a green rule instead of four outlined boxes. */
body.variant-d .company-gateway .recovery-card-grid{gap:0 56px;margin-top:42px;}
body.variant-d .company-gateway .recovery-card-grid article{display:flex;flex-direction:column;align-items:flex-start;background:transparent;border:0;border-top:2px solid var(--gro-leaf-deep);padding:26px 0 40px;}
body.variant-d .company-gateway .recovery-card-grid h3{margin-bottom:14px;}
body.variant-d .company-gateway .recovery-card-grid p{color:#3f5047;}
body.variant-d .company-gateway .recovery-card-grid a{margin-top:auto;text-decoration:none;border-bottom:1px solid #8ea58a;padding:8px 0;font-weight:600;transition:color .2s,border-color .2s;}
body.variant-d .company-gateway .recovery-card-grid a:hover{color:var(--gro-leaf-deep);border-color:var(--gro-leaf-deep);}
/* The supplier entry becomes a clearly visible strip rather than a loose line. */
body.variant-d .company-gateway .supplier-entry{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px 40px;margin-top:10px;padding:24px 28px;background:var(--gro-sage);border-left:4px solid var(--gro-leaf);}
body.variant-d .company-gateway .supplier-entry p{margin:0;max-width:70ch;color:#26352f;}
body.variant-d .company-gateway .supplier-entry a{font-weight:650;border-bottom-color:var(--gro-leaf-deep);white-space:normal;transition:color .2s;}
body.variant-d .company-gateway .supplier-entry a:hover{color:var(--gro-leaf-deep);}

/* 9. Related services: the same open card language, subtle response on hover. */
body.variant-d .p6-related-card{background:#f6f6f0;border:0;border-top:2px solid var(--gro-leaf-deep);transition:background .25s,border-color .25s;}
body.variant-d .p6-related-card:hover{background:#fbfbf7;border-top-color:var(--gro-leaf);}
body.variant-d .p6-related-card:hover .text-link>span[aria-hidden]{transform:translateX(3px);}

/* 10. In-page contents: a quiet tab bar (sticky on desktop) instead of outlined chips. */
body.variant-d main>.company-contents{gap:6px 28px;padding-top:0;padding-bottom:0;border-bottom:1px solid var(--gro-rule);background:var(--gro-paper);}
body.variant-d main>.company-contents a{border:0;border-bottom:2px solid transparent;padding:17px 0 15px;color:var(--gro-steel);font-size:.92rem;font-weight:600;line-height:1.35;transition:color .2s,border-color .2s;}
body.variant-d main>.company-contents a:hover{background:none;color:#1d3326;border-bottom-color:#9fb98a;}
body.variant-d main>.company-contents a.is-active{color:#1d3326;border-bottom-color:var(--gro-leaf);}
@media(min-width:1081px){
 body.variant-d main>.company-contents{position:sticky;top:88px;z-index:20;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;box-shadow:0 0 0 100vmax var(--gro-paper);clip-path:inset(0 -100vmax);}
 body.variant-d main>.company-contents::-webkit-scrollbar{display:none;}
 body.variant-d main>.company-contents a{flex:none;white-space:nowrap;}
 html:has(main>.company-contents){scroll-padding-top:150px;}
 /* The existing sticky scope heading must stay clear of the contents bar. */
 body.variant-d main:has(>.company-contents) .industrial-scope-heading{top:176px;}
}
@media(max-width:1080px){
 body.variant-d main>.company-contents{gap:8px;padding-top:18px;padding-bottom:18px;border-bottom:0;background:transparent;}
 body.variant-d main>.company-contents a{border:1px solid #c9d2c2;background:#f7f7f2;padding:9px 12px;font-size:.9rem;font-weight:500;}
}

/* 11. Contact: the photograph joins the dark hero like on the other key pages (was a framed box). */
@media(min-width:761px){
 body.variant-d .vx-contact-hero{position:relative;isolation:isolate;overflow:hidden;background:var(--gro-night);padding:0;}
 body.variant-d .vx-contact-hero .vx-page-grid{position:static;display:block;min-height:520px;}
 body.variant-d .vx-contact-hero .vx-page-copy{position:relative;z-index:2;width:56%;max-width:680px;padding:70px 0 74px;}
 body.variant-d .vx-contact-hero .vx-page-grid>.vx-visual{position:absolute;z-index:0;inset:0 0 0 38%;width:auto;height:auto;max-height:none;margin:0;border:0;}
 body.variant-d .vx-contact-hero .industrial-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:58% 50%;}
}
body.variant-d .vx-contact-hero .industrial-photo{background:var(--gro-night);box-shadow:none;}
body.variant-d .vx-contact-hero .industrial-photo:before{display:none;}
body.variant-d .vx-contact-hero .industrial-photo:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#17211f 0%,#17211ff2 10%,#17211fc4 25%,#17211f70 48%,#17211f1f 72%),linear-gradient(0deg,#17211f 0%,#17211f00 24%,#17211f00 86%,#17211f55 100%);}
@media(max-width:760px){
 body.variant-d .vx-contact-hero{padding-bottom:0;}
 body.variant-d .vx-contact-hero .vx-page-grid{gap:18px;}
 body.variant-d .vx-contact-hero .vx-page-grid>.vx-visual{position:relative;width:calc(100% + 40px);height:clamp(200px,56vw,320px);margin:0 -20px;border:0;}
 body.variant-d .vx-contact-hero .industrial-photo img{width:100%;height:100%;object-fit:cover;}
 body.variant-d .vx-contact-hero .industrial-photo:after{background:linear-gradient(180deg,#17211f 0%,#17211f55 22%,#17211f00 48%,#17211f00 78%,#17211f 100%);}
}

/* 12. Photography grade: the two most saturated stock heroes sit closer to the coating-line palette. */
body.variant-d .vx-contact-hero .industrial-photo img{filter:saturate(.8) contrast(1.03);}
body.variant-d .reference-system{--reference-focus:58% 52%;--reference-mobile-focus:56% 55%;}
body.variant-d .reference-restart .industrial-photo img{filter:saturate(.85) brightness(.88);}

/* 13. Footer: a dark graphite base with the supplied metallic R2 logo for dark backgrounds. */
body.variant-d .site-footer{background:var(--gro-footer);color:#d5ddd2;border-top:1px solid #2a3833;}
body.variant-d .site-footer .footer-brand{display:block;width:210px;max-width:100%;}
body.variant-d .site-footer .premium-footer-logo{display:block;width:100%;height:auto;filter:none;}
body.variant-d .site-footer .footer-top p{color:#a9b6ad;}
body.variant-d .site-footer .location{color:#a9b6ad;}
body.variant-d .site-footer .location i{background:var(--gro-accent);}
body.variant-d .site-footer .footer-contact>p{color:#94a299;}
body.variant-d .site-footer .footer-contact>a{color:#eef3ea;}
body.variant-d .site-footer .footer-contact small{color:#94a299;}
body.variant-d .site-footer .footer-services a{color:#d5ddd2;border-color:#2f3d38;}
body.variant-d .site-footer :is(.footer-services a,.footer-contact>a,.company-directory a,.footer-bottom a){transition:color .2s;}
body.variant-d .site-footer :is(.footer-services a,.footer-contact>a,.company-directory a,.footer-bottom a):hover{color:var(--gro-accent);}
body.variant-d .site-footer .company-directory{border-top-color:#2f3d38;}
body.variant-d .site-footer .company-directory p{color:#eef3ea;}
body.variant-d .site-footer .company-directory a{color:#b9c5bc;}
body.variant-d .site-footer .footer-bottom{border-top-color:#2f3d38;color:#8f9c94;}
body.variant-d .site-footer .footer-bottom a{color:#b9c5bc;}
body.variant-d .site-footer .image-credits{color:#a9b6ad;}
body.variant-d .site-footer .image-credits a{color:#d5ddd2;}

/* 15. Owner content of 2026-11-10: new sections in the same open card language. */
/* Clean — benefit of the joint model, shown under both equal model cards. */
body.variant-d .industrial-model-benefit{margin-top:26px;padding:24px 28px;background:#f7f7f1;border-left:4px solid var(--gro-leaf);}
body.variant-d .industrial-model-benefit h3{font-size:1.3rem;line-height:1.3;margin:0 0 10px;}
body.variant-d .industrial-model-benefit p{margin:0;max-width:82ch;color:#26352f;}
/* Check360 — six audiences plus the existing typical situations. */
body.variant-d .check360-audience .section-lead{max-width:70ch;}
body.variant-d .check360-audience-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 40px;list-style:none;padding:0;margin:34px 0 0;}
body.variant-d .check360-audience-grid li{border-top:2px solid var(--gro-leaf-deep);padding:22px 0 30px;min-width:0;}
body.variant-d .check360-audience-grid h3{font-size:1.2rem;line-height:1.3;margin:0 0 10px;}
body.variant-d .check360-audience-grid p{margin:0;color:#3f5047;}
body.variant-d .check360-situations{margin-top:18px;padding:26px 30px;background:#f7f7f1;border-top:2px solid var(--gro-leaf-deep);}
body.variant-d .check360-situations .eyebrow{margin-bottom:8px;}
body.variant-d .check360-situations h3{font-size:1.35rem;margin:0 0 6px;}
body.variant-d .check360-situations .p6-situations{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 32px;}
/* Risk — why GRO, as a dark band between context and scope. */
body.variant-d .risk-why{background:var(--gro-forest);color:#eef3ea;}
body.variant-d .risk-why .eyebrow{color:var(--gro-accent);}
body.variant-d .risk-why-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:56px;align-items:start;}
body.variant-d .risk-why h2{max-width:22ch;}
body.variant-d :is(.risk-why,.system-floor) h2{margin-bottom:26px;}
body.variant-d .risk-why-grid>div>p{color:#d3ddd1;max-width:64ch;}
body.variant-d .risk-why-points{list-style:none;padding:0;margin:0;}
body.variant-d .risk-why-points li{border-top:1px solid #4b6052;padding:20px 0 22px;}
body.variant-d .risk-why-points li:first-child{border-top:2px solid var(--gro-accent);}
body.variant-d .risk-why-points h3{color:#f3f7ee;font-size:1.15rem;margin:0 0 8px;}
body.variant-d .risk-why-points p{color:#c4d3c8;margin:0;}
/* System — work on the shop floor, facts, perspective paragraph and outcomes list. */
body.variant-d .system-floor{background:var(--gro-sage);}
body.variant-d .system-floor-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:56px;align-items:start;}
body.variant-d .system-floor-grid>div>p{max-width:68ch;color:#26352f;}
body.variant-d .system-floor-facts{margin:0;}
body.variant-d .system-floor-facts>div{border-top:2px solid var(--gro-leaf-deep);padding:18px 0 22px;}
body.variant-d .system-floor-facts dt{font-size:.8rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gro-leaf-deep);}
body.variant-d .system-floor-facts dd{margin:6px 0 0;font-size:1.08rem;line-height:1.5;color:#1d2b26;}
body.variant-d .p6-integration-perspective{margin:38px 0 0;padding:24px 28px;border-left:4px solid var(--gro-accent);background:#ffffff0d;color:#e6eedf;font-size:1.08rem;max-width:92ch;}
body.variant-d .system-outcomes{margin-top:26px;}
body.variant-d .system-outcomes>p{font-weight:650;margin:0 0 12px;}
body.variant-d .system-outcomes ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 40px;list-style:none;padding:0;margin:0;max-width:1000px;}
body.variant-d .system-outcomes li{position:relative;padding-left:22px;}
body.variant-d .system-outcomes li:before{content:"";position:absolute;left:0;top:.62em;width:8px;height:8px;background:var(--gro-leaf);}
@media(max-width:1080px){
 body.variant-d .check360-audience-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
 body.variant-d .check360-situations .p6-situations{grid-template-columns:minmax(0,1fr);}
 body.variant-d :is(.risk-why-grid,.system-floor-grid){grid-template-columns:minmax(0,1fr);gap:28px;}
}
@media(max-width:760px){
 body.variant-d .check360-audience-grid{grid-template-columns:minmax(0,1fr);margin-top:24px;}
 body.variant-d .check360-situations{padding:22px 20px;}
 body.variant-d .industrial-model-benefit{padding:20px;}
 body.variant-d .p6-integration-perspective{padding:20px;font-size:1rem;}
 body.variant-d .system-outcomes ul{grid-template-columns:minmax(0,1fr);}
}

/* 16. Contact: approved correspondence address; the separate country marker would repeat "Schweiz". */
body.variant-d .contact-details .company-postal-address{margin:22px 0 0;padding-top:18px;border-top:1px solid var(--gro-rule);font-size:.95rem;line-height:1.6;color:#3f5047;}
body.variant-d .contact-details .company-postal-address+.contact-location{display:none;}

/* 14. Calm staggered entry of card rows that are revealed below the fold (existing d.js reveal). */
@media(prefers-reduced-motion:no-preference){
 body.variant-d .d-pending.d-visible :is(.p6-portfolio-grid,.recovery-card-grid,.p6-related-grid,.industrial-steps,.principles,.p6-integration-grid,.industrial-model-grid,.recovery-problem-grid,.check360-audience-grid,.risk-why-points)>*{animation:gro-rise .65s var(--gro-ease) backwards;}
 body.variant-d .d-pending.d-visible :is(.p6-portfolio-grid,.recovery-card-grid,.p6-related-grid,.industrial-steps,.principles,.p6-integration-grid,.industrial-model-grid,.recovery-problem-grid,.check360-audience-grid,.risk-why-points)>:nth-child(2){animation-delay:.08s;}
 body.variant-d .d-pending.d-visible :is(.p6-portfolio-grid,.recovery-card-grid,.p6-related-grid,.industrial-steps,.principles,.p6-integration-grid,.industrial-model-grid,.recovery-problem-grid,.check360-audience-grid,.risk-why-points)>:nth-child(3){animation-delay:.16s;}
 body.variant-d .d-pending.d-visible :is(.p6-portfolio-grid,.recovery-card-grid,.p6-related-grid,.industrial-steps,.principles,.p6-integration-grid,.industrial-model-grid,.recovery-problem-grid,.check360-audience-grid,.risk-why-points)>:nth-child(n+4){animation-delay:.24s;}
}
@keyframes gro-rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}

@media(max-width:760px){
 body.variant-d .company-gateway .recovery-card-grid{gap:0;margin-top:30px;}
 body.variant-d .company-gateway .recovery-card-grid article{padding:22px 0 30px;}
 body.variant-d .company-gateway .supplier-entry{grid-template-columns:minmax(0,1fr);padding:20px;}
 body.variant-d .site-footer .footer-brand{width:180px;}
}
@media(prefers-reduced-motion:reduce){
 body.variant-d .services-nav[open]>.dropdown{animation:none;}
 body.variant-d .p6-portfolio-card:is(:hover,:focus-visible) .p6-card-media img{transform:none;}
 body.variant-d :is(.text-link,.button,.header-contact,.p6-card-link)>span{transform:none!important;}
}
