
    .bim-page{
      --navy:#073b5c;
      --navy-2:#0b4f78;
      --blue:#087bb5;
      --cyan:#18b8d7;
      --ink:#12324a;
      --muted:#5c7180;
      --line:#dce8ee;
      --soft:#f3f9fc;
      --white:#fff;
      --shadow:0 18px 45px rgba(7,59,92,.10);
      --radius:18px;
      --max:1180px;
    }
    .bim-page *{box-sizing:border-box}
    .bim-page{scroll-behavior:smooth}
    .bim-page{
      margin:0;
      font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
      color:var(--ink);
      background:#fff;
      line-height:1.65;
    }
    .bim-page img{max-width:100%;display:block}
    .bim-page a{color:inherit}
    .bim-page .container{width:min(var(--max),calc(100% - 40px));margin:auto}
    .bim-page .eyebrow{
      color:var(--blue);
      text-transform:uppercase;
      letter-spacing:.12em;
      font-size:.78rem;
      font-weight:800;
      margin-bottom:12px;
    }
    .bim-page h1, .bim-page h2, .bim-page h3{line-height:1.12;margin:0 0 18px;letter-spacing:-.025em}
    .bim-page h1{font-size:clamp(2.8rem,6vw,5.5rem);max-width:760px}
    .bim-page h2{font-size:clamp(2rem,4vw,3.25rem)}
    .bim-page h3{font-size:1.15rem}
    .bim-page p{margin:0 0 18px;color:var(--muted)}
    .bim-page .btn{
      display:inline-flex;align-items:center;gap:10px;
      padding:14px 22px;border-radius:999px;
      background:var(--navy);color:#fff;text-decoration:none;font-weight:800;
      box-shadow:0 10px 24px rgba(7,59,92,.18);
      transition:.2s ease;
    }
    .bim-page .btn:hover{transform:translateY(-2px);background:var(--navy-2)}
    .bim-page .btn.secondary{background:#fff;color:var(--navy);border:1px solid var(--line);box-shadow:none}


    /* Hero */
    .bim-page .hero{
      position:relative;overflow:hidden;
      background:linear-gradient(120deg,#f4fbfe 0%,#fff 48%,#eaf7fb 100%);
      padding:86px 0 92px;
    }
    .bim-page .hero:before{
      content:"";position:absolute;width:620px;height:620px;right:-160px;top:-250px;
      border-radius:50%;background:rgba(24,184,215,.10);filter:blur(5px);
    }
    .bim-page .hero-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:center;position:relative}
    .bim-page .hero-copy .bim-page p{font-size:1.08rem;max-width:650px}
    .bim-page .hero-image{
      min-height:500px;border-radius:28px;position:relative;overflow:hidden;
      background:
        linear-gradient(135deg,rgba(255,255,255,.08),rgba(7,59,92,.16)),
        #dff1f5;
      box-shadow:var(--shadow);
    }
    .bim-page .hero-image .placeholder{
      position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:35px;
      color:var(--navy);font-weight:800;
      background:
        linear-gradient(transparent 49%,rgba(7,59,92,.08) 50%,transparent 51%),
        linear-gradient(90deg,transparent 49%,rgba(7,59,92,.08) 50%,transparent 51%);
      background-size:80px 80px;
    }
    .bim-page .hero-image .placeholder div{background:rgba(255,255,255,.88);padding:18px 24px;border-radius:14px}
    .bim-page .hero-tags{display:flex;flex-wrap:wrap;gap:8px;margin:26px 0}
    .bim-page .tag{padding:7px 12px;border:1px solid #cfe3eb;border-radius:999px;background:#fff;color:var(--navy);font-size:.78rem;font-weight:800}

    /* Sections */
    .bim-page section{padding:100px 0}
    .bim-page .section-head{max-width:760px;margin-bottom:48px}
    .bim-page .two-col{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}
    .bim-page .soft-section{background:var(--soft)}
    .bim-page .benefits{display:grid;grid-template-columns:1fr 1fr;gap:18px}
    .bim-page .benefit, .bim-page .format-card, .bim-page .audience, .bim-page .step{
      border:1px solid var(--line);background:#fff;border-radius:var(--radius);
      padding:27px;box-shadow:0 8px 25px rgba(7,59,92,.045);
    }
    .bim-page .icon{
      width:45px;height:45px;border-radius:13px;display:grid;place-items:center;
      background:#e8f7fb;color:var(--blue);font-size:1.35rem;margin-bottom:18px;
    }
    .bim-page .benefit p, .bim-page .format-card p, .bim-page .audience .bim-page p{font-size:.92rem}
    .bim-page .visual-card{
      min-height:430px;border-radius:24px;overflow:hidden;
      background:
        radial-gradient(circle at 25% 25%,#b7e7ef 0 8%,transparent 9%),
        linear-gradient(135deg,#e8f6fa,#c8e6eb);
      position:relative;box-shadow:var(--shadow);
    }
    .bim-page .visual-card:after{
      content:"";position:absolute;inset:12% 8%;
      border:2px solid rgba(7,59,92,.15);transform:perspective(600px) rotateX(57deg) rotateZ(-8deg);
      border-radius:12px;box-shadow:0 40px 0 rgba(7,59,92,.05),0 80px 0 rgba(7,59,92,.04);
    }
    .bim-page .visual-label{
      position:absolute;z-index:2;left:25px;bottom:25px;background:rgba(255,255,255,.9);
      padding:13px 16px;border-radius:12px;font-weight:800;color:var(--navy)
    }

    /* Formats */
    .bim-page .formats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
    .bim-page .format-card{padding:34px}
    .bim-page .format-code{font-size:2.1rem;font-weight:950;color:var(--navy);margin-bottom:10px}
    .bim-page .format-card{transition:.2s ease}
    .bim-page .format-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
    .bim-page .format-line{height:4px;width:46px;background:var(--cyan);border-radius:5px;margin-bottom:25px}

    /* Workflow */
    .bim-page .workflow{display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative}
    .bim-page .workflow:before{content:"";position:absolute;left:8%;right:8%;top:29px;height:2px;background:#c9dfe8}
    .bim-page .step{position:relative;background:transparent;border:0;box-shadow:none;padding:0 18px;text-align:center}
    .bim-page .step-num{
      width:58px;height:58px;border-radius:50%;background:var(--navy);color:#fff;
      display:grid;place-items:center;margin:0 auto 20px;font-weight:900;position:relative;z-index:1;
      border:7px solid #fff;box-shadow:0 0 0 2px #c9dfe8;
    }
    .bim-page .step .bim-page p{font-size:.88rem}

    /* Case study */
    .bim-page .case{background:var(--navy);color:#fff}
    .bim-page .case p{color:#c7dce8}

    /* Keep dark-section typography readable even when the active theme sets heading colors */
    .bim-page .case h1,
    .bim-page .case h2,
    .bim-page .case h3,
    .bim-page .cta h1,
    .bim-page .cta h2,
    .bim-page .cta h3{color:#fff !important}
    .bim-page .case p{color:#c7dce8 !important}
    .bim-page .cta p{color:#c8dce7 !important}

    .bim-page .case-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:center}
    .bim-page .case-images{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
    .bim-page .case-img{
      aspect-ratio:1.1/1;border-radius:15px;overflow:hidden;
      background:
        linear-gradient(145deg,#d8f0f1,#8ec9d1 45%,#e4b15d 46%,#d98a31 65%,#9ccee1 66%);
      border:1px solid rgba(255,255,255,.16);
      position:relative;
    }
    .bim-page .case-img:nth-child(2){background:linear-gradient(145deg,#eaf4fa,#7dc3da 40%,#aab2df 41%,#625db0 64%,#c8e4ef 65%)}
    .bim-page .case-img:nth-child(3){background:linear-gradient(145deg,#f2f7f9,#d1e5df 40%,#a4c67c 41%,#e4b454 64%,#a8cfe1 65%)}
    .bim-page .case-img span{position:absolute;left:12px;bottom:12px;background:rgba(7,59,92,.82);padding:6px 9px;border-radius:8px;font-size:.72rem;font-weight:800}
    .bim-page .software-flow{display:flex;align-items:center;gap:10px;margin-top:25px;flex-wrap:wrap}
    .bim-page .software-flow span{padding:9px 13px;border-radius:9px;background:rgba(255,255,255,.10);font-weight:800;font-size:.8rem}
    .bim-page .software-flow b{color:#71d7e7}

    /* Applications */
    .bim-page .applications{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
    .bim-page .audience{padding:30px}
    .bim-page .audience .icon{margin-bottom:15px}


    /* CTA */
    .bim-page .cta{
      background:
        radial-gradient(circle at 85% 20%,rgba(24,184,215,.18),transparent 30%),
        var(--navy);
      color:#fff;padding:85px 0;
    }
    .bim-page .cta-grid{display:flex;align-items:center;justify-content:space-between;gap:40px}
    .bim-page .cta p{color:#c8dce7;max-width:650px}
    .bim-page .cta .btn{background:#fff;color:var(--navy)}


    @media(max-width:900px){
      .bim-page .hero-grid, .bim-page .two-col, .bim-page .case-grid{grid-template-columns:1fr}
      .bim-page .hero-image{min-height:390px}
      .bim-page .workflow{grid-template-columns:1fr 1fr;gap:35px}
      .bim-page .workflow:before{display:none}
      .bim-page .formats, .bim-page .applications{grid-template-columns:1fr}
    }
    @media(max-width:620px){
      .bim-page .container{width:min(var(--max),calc(100% - 28px))}
      .bim-page section{padding:70px 0}
      .bim-page .hero{padding:60px 0 70px}
      .bim-page h1{font-size:2.65rem}
      .bim-page .benefits{grid-template-columns:1fr}
      .bim-page .workflow{grid-template-columns:1fr}
      .bim-page .case-images{grid-template-columns:1fr}
      .bim-page .case-img{aspect-ratio:16/9}

    }
  

/* V3: päris BIM-pildid */
.bim-page .hero-image img,
.bim-page .visual-card img,
.bim-page .case-img img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}
.bim-page .hero-image img {
  position: absolute;
  inset: 0;
}
.bim-page .visual-card {
  background: #fff;
}
.bim-page .visual-card:after {
  display: none;
}
.bim-page .visual-card img {
  position: absolute;
  inset: 0;
  object-fit: contain;
  background: #fff;
}
.bim-page .case-img {
  background: #fff !important;
}
.bim-page .case-img img {
  position: absolute;
  inset: 0;
  object-fit: cover;
}


/* V4: preserve uploaded image proportions and let text flow around them */
.bim-page .hero-grid{
  grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);
  gap:52px;
}
.bim-page .hero-copy{
  max-width:620px;
}
.bim-page .hero-copy h1{
  font-size:clamp(2.7rem,5.1vw,4.9rem);
  max-width:680px;
}
.bim-page .hero-copy p{
  max-width:590px;
}

.bim-page .hero-image,
.bim-page .visual-card,
.bim-page .case-img{
  min-height:0 !important;
  height:auto;
}

.bim-page .image-ratio-hero{aspect-ratio:1597 / 886;}
.bim-page .image-ratio-foto2{aspect-ratio:1357 / 675;}
.bim-page .image-ratio-foto3{aspect-ratio:1387 / 828;}

.bim-page .hero-image img,
.bim-page .visual-card img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  background:#fff;
}

.bim-page .case-grid{
  grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);
  gap:48px;
  align-items:center;
}
.bim-page .case-grid > div:first-child{
  max-width:470px;
}
.bim-page .case-grid h2{
  font-size:clamp(1.9rem,3.2vw,2.8rem);
}
.bim-page .case-images{
  grid-template-columns:1fr;
  gap:14px;
}
.bim-page .case-img{
  aspect-ratio:2048 / 1194 !important;
}
.bim-page .case-img img{
  object-fit:contain;
  background:#fff;
}
.bim-page .case-img span{
  z-index:2;
}

.bim-page .section-head{
  max-width:720px;
}
.bim-page .two-col{
  grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
  gap:56px;
}

@media(max-width:1100px){
  .bim-page .hero-grid{
    grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
    gap:36px;
  }
  .bim-page .case-grid{
    grid-template-columns:1fr;
  }
  .bim-page .case-grid > div:first-child{
    max-width:760px;
  }
}

@media(max-width:900px){
  .bim-page .hero-grid,
  .bim-page .two-col,
  .bim-page .case-grid{
    grid-template-columns:1fr;
  }
  .bim-page .hero-copy,
  .bim-page .hero-copy p,
  .bim-page .case-grid > div:first-child{
    max-width:none;
  }
  .bim-page .hero-image{
    min-height:0 !important;
  }
}

@media(max-width:620px){
  .bim-page .hero-copy h1{
    font-size:2.5rem;
  }
  .bim-page .case-img{
    aspect-ratio:2048 / 1194 !important;
  }
}
