:root{
  --oc-copper:#B87333;
  --oc-anthracite:#1E1E20;
  --oc-silver:#B9BDC3;
  --oc-offwhite:#F6F6F4;
  --oc-black:#0D0D0F;
  --oc-white:#FFFFFF;
  --oc-max:1180px;
  --oc-shadow:0 20px 55px rgba(13,13,15,.10);
}
html{scroll-behavior:smooth}
body{font-family:Inter,Arial,sans-serif;background:var(--oc-offwhite);color:var(--oc-anthracite)}
h1,h2,h3,h4,.oc-display,.wp-block-button__link{font-family:Montserrat,Arial,sans-serif}
a{transition:opacity .2s ease,transform .2s ease,color .2s ease}
.oc-wrap{max-width:var(--oc-max);margin:0 auto}
.oc-section{padding:clamp(56px,7vw,108px) 24px}
.oc-section--tight{padding:clamp(34px,4vw,62px) 24px}
.oc-dark{background:var(--oc-black);color:var(--oc-white)}
.oc-anthracite{background:var(--oc-anthracite);color:var(--oc-white)}
.oc-kicker{font:600 .76rem/1.2 Montserrat,Arial,sans-serif;letter-spacing:.22em;text-transform:uppercase;color:var(--oc-copper);margin:0 0 12px}
.oc-title{font-weight:600;letter-spacing:-.035em;line-height:1.02;margin:.25em 0 .35em}
.oc-lead{font-size:clamp(1rem,1.6vw,1.22rem);max-width:720px;color:inherit;opacity:.82}
.oc-rule{width:64px;height:2px;background:var(--oc-copper);margin:0 0 18px}
.oc-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.oc-grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.oc-grid-6{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.oc-card{background:#fff;border:1px solid rgba(30,30,32,.09);min-height:210px;position:relative;overflow:hidden;padding:24px;box-shadow:0 10px 28px rgba(13,13,15,.04)}
.oc-card--dark{background:var(--oc-anthracite);color:#fff;border-color:rgba(255,255,255,.08)}
.oc-card h3{margin-top:0}
.oc-cta,.wp-block-button.oc-cta .wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;gap:.7rem;background:var(--oc-copper);color:#fff!important;padding:15px 22px;text-decoration:none;text-transform:uppercase;font:600 .76rem/1 Montserrat,Arial,sans-serif;letter-spacing:.05em;border:0;border-radius:0}
.oc-cta--outline,.wp-block-button.oc-cta--outline .wp-block-button__link{background:transparent!important;color:inherit!important;border:1px solid currentColor}
.oc-proof{display:flex;gap:26px;flex-wrap:wrap;align-items:center}

/* HERO */
.oc-hero{position:relative;isolation:isolate;min-height:min(760px,82vh);display:flex;align-items:flex-end;background:linear-gradient(90deg,rgba(13,13,15,.92) 0%,rgba(13,13,15,.65) 46%,rgba(13,13,15,.16) 78%),var(--oc-hero-image,linear-gradient(135deg,#1E1E20,#0D0D0F));background-size:cover;background-position:center;color:#fff}
.oc-hero:after{content:"";position:absolute;inset:auto 0 0;height:22%;background:linear-gradient(0deg,var(--oc-black),transparent);z-index:-1}
.oc-hero__inner{padding:clamp(72px,9vw,130px) 24px clamp(52px,6vw,92px);width:100%}
.oc-hero__content{max-width:760px}
.oc-hero__content .oc-title{font-size:clamp(3rem,7vw,6.4rem);max-width:850px}
.oc-hero__buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.oc-brand-strip{display:grid;grid-template-columns:repeat(5,1fr);background:var(--oc-black);color:#fff;border-top:1px solid rgba(255,255,255,.08)}
.oc-brand-strip>div{padding:20px;text-align:center;border-right:1px solid rgba(255,255,255,.08);font:600 .78rem/1.3 Montserrat,Arial,sans-serif}

/* SERVICES */
.oc-service-row{display:grid;grid-template-columns:repeat(6,minmax(180px,1fr));gap:12px}
.oc-service-card{min-height:280px;background:linear-gradient(0deg,rgba(13,13,15,.88),rgba(13,13,15,.08)),var(--oc-service-image,linear-gradient(135deg,#444,#111));background-size:cover;background-position:center;display:flex;flex-direction:column;justify-content:flex-end;padding:20px;color:#fff;text-decoration:none;overflow:hidden;position:relative}
.oc-service-card:hover{transform:translateY(-2px)}
.oc-service-card h3{margin:0 0 4px;font-size:1.05rem}.oc-service-card p{margin:0;opacity:.8;font-size:.86rem}

/* NEWS */
.oc-news-head{display:grid;grid-template-columns:minmax(260px,.8fr) 1.6fr;gap:56px;align-items:end;margin-bottom:34px}
.oc-news-card{background:var(--oc-black);color:#fff;min-height:390px;display:flex;flex-direction:column;justify-content:flex-end;padding:24px;position:relative;overflow:hidden}
.oc-news-card:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(13,13,15,.96),rgba(13,13,15,.08) 70%);z-index:0}
.oc-news-card>*{position:relative;z-index:1}
.oc-news-card .oc-kicker,.oc-news-card .wp-block-post-terms{color:#fff;background:var(--oc-copper);display:inline-block;width:max-content;padding:6px 8px;letter-spacing:.08em;text-transform:uppercase;font:.68rem/1.2 Montserrat,Arial,sans-serif}
.oc-news-card a{color:#fff;text-decoration:none}.oc-news-card .wp-block-post-date{opacity:.72;font-size:.78rem}

/* ECOSYSTEM */
.oc-ecosystem{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:14px}
.oc-ecosystem .oc-card{min-height:250px}

/* MOBILE STICKY */
.oc-sticky-mobile{display:none}
@media(max-width:900px){
  .oc-section{padding:46px 18px}.oc-section--tight{padding:32px 18px}
  .oc-grid-3,.oc-grid-4{grid-template-columns:1fr}.oc-grid-6{grid-template-columns:repeat(2,minmax(0,1fr))}
  .oc-news-head{grid-template-columns:1fr;gap:18px}
  .oc-service-row{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px;margin-right:-18px}
  .oc-service-card{flex:0 0 72%;min-height:310px;scroll-snap-align:start}
  .oc-news-card{min-height:330px}
  .wp-block-post-template.is-layout-grid{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin-right:-18px;padding-bottom:8px}
  .wp-block-post-template.is-layout-grid>li{flex:0 0 82%;scroll-snap-align:start}
  .oc-ecosystem{grid-template-columns:1fr}
  .oc-brand-strip{grid-template-columns:repeat(4,1fr);overflow-x:auto}
  .oc-brand-strip>div{min-width:130px}
  .oc-hero{min-height:690px;background-position:58% center}
  .oc-hero__inner{padding:94px 18px 44px}.oc-hero__content .oc-title{font-size:clamp(2.8rem,14vw,4.8rem)}
  .oc-sticky-mobile{display:grid;grid-template-columns:repeat(3,1fr);position:fixed;bottom:0;left:0;right:0;z-index:9999;background:var(--oc-copper);color:#fff;padding:10px 8px calc(10px + env(safe-area-inset-bottom));box-shadow:0 -8px 30px rgba(0,0,0,.20)}
  .oc-sticky-mobile a{color:#fff;text-decoration:none;text-align:center;font:600 .72rem/1.2 Montserrat,Arial,sans-serif;text-transform:uppercase;border-right:1px solid rgba(255,255,255,.28);padding:5px 3px}.oc-sticky-mobile a:last-child{border-right:0}
  body{padding-bottom:74px}
}
