:root {
  --gold:#d7a52e;
  --bg:#020202;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--bg)}
body{
  margin:0;
  min-height:100vh;
  background:
    radial-gradient(circle at 50% 0%,rgba(215,165,46,.10),transparent 34%),
    #020202;
  font-family:Arial,sans-serif;
  overflow-x:hidden;
}
.page-shell{
  width:min(100vw,1024px);
  margin:0 auto;
  position:relative;
  background:#000;
  box-shadow:0 0 80px rgba(0,0,0,.8);
}
.card{
  display:block;
  width:100%;
  height:auto;
  user-select:none;
  -webkit-user-drag:none;
}
.hotspot{
  position:absolute;
  display:block;
  border:1px solid transparent;
  border-radius:6px;
  transition:.25s ease;
  cursor:pointer;
}
.hotspot:hover{
  border-color:rgba(215,165,46,.85);
  box-shadow:0 0 0 3px rgba(215,165,46,.12),0 0 30px rgba(215,165,46,.20);
  background:rgba(215,165,46,.04);
}
.hotspot:focus-visible{
  outline:2px solid var(--gold);
  outline-offset:3px;
}
.cta{left:39.5%;top:91.1%;width:27.8%;height:5.2%}
.project-1{left:1.5%;top:79.6%;width:31.8%;height:10.4%}
.project-2{left:33.8%;top:79.6%;width:32.6%;height:10.4%}
.project-3{left:66.5%;top:79.6%;width:31.9%;height:10.4%}
.before{left:32.7%;top:9.1%;width:33.5%;height:17.5%}
.after{left:66.6%;top:9.1%;width:32.2%;height:17.5%}
.tooltip{
  position:fixed;
  z-index:50;
  pointer-events:none;
  opacity:0;
  transform:translateY(8px);
  transition:.18s ease;
  background:rgba(5,5,5,.94);
  color:#f3e5bd;
  border:1px solid rgba(215,165,46,.65);
  padding:9px 12px;
  font-size:12px;
  letter-spacing:.03em;
  border-radius:4px;
  box-shadow:0 12px 30px rgba(0,0,0,.45);
  max-width:240px;
}
.tooltip.show{opacity:1;transform:none}
@media(max-width:700px){
  .page-shell{width:100vw}
  .hotspot:hover{box-shadow:none}
}
@media(prefers-reduced-motion:reduce){
  *{transition:none!important;scroll-behavior:auto!important}
}

/* ---- extracted style block ---- */

.ramerk-card-switch{position:fixed;top:50%;transform:translateY(-50%);z-index:2147483000;width:74px;height:118px;display:flex;align-items:center;justify-content:center;text-decoration:none;color:#d8a84f;background:linear-gradient(180deg,rgba(8,7,5,.88),rgba(2,2,2,.94));border:1px solid rgba(216,168,79,.42);box-shadow:0 12px 42px rgba(0,0,0,.55),inset 0 0 22px rgba(216,168,79,.035);font:400 36px/1 Georgia,serif;transition:width .25s ease,background .25s ease,color .25s ease,border-color .25s ease;backdrop-filter:blur(5px)}
  .ramerk-card-switch.prev{left:18px}.ramerk-card-switch.next{right:18px}
  .ramerk-card-switch span{position:absolute;top:calc(100% + 8px);white-space:nowrap;font:600 9px/1.2 Arial,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:rgba(244,211,127,.78);opacity:0;transition:opacity .2s ease}
  .ramerk-card-switch:hover,.ramerk-card-switch:focus-visible{width:88px;color:#f4d37f;background:linear-gradient(180deg,rgba(34,24,10,.96),rgba(5,4,3,.98));border-color:rgba(244,211,127,.9);outline:none}
  .ramerk-card-switch:hover span,.ramerk-card-switch:focus-visible span{opacity:1}
  .ramerk-card-home{position:fixed;right:18px;bottom:18px;z-index:2147483000;padding:12px 16px;color:#d8a84f;text-decoration:none;background:rgba(3,3,3,.9);border:1px solid rgba(216,168,79,.42);font:600 9px/1 Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase}
  .ramerk-zoomable{cursor:zoom-in!important;transition:filter .25s ease,transform .25s ease!important}
  .ramerk-zoomable:hover{filter:brightness(1.08) contrast(1.03);}
  #ramerk-lightbox{position:fixed;inset:0;z-index:2147483646;display:none;align-items:center;justify-content:center;padding:42px;background:rgba(0,0,0,.94);cursor:zoom-out}
  #ramerk-lightbox.open{display:flex}
  #ramerk-lightbox img{max-width:96vw;max-height:92vh;width:auto!important;height:auto!important;object-fit:contain!important;position:static!important;transform:none!important;filter:none!important;border:1px solid rgba(216,168,79,.55);box-shadow:0 24px 90px rgba(0,0,0,.85)}
  #ramerk-lightbox button{position:fixed;right:22px;top:20px;width:46px;height:46px;border:1px solid rgba(216,168,79,.6);background:#090806;color:#f4d37f;font-size:25px;cursor:pointer}
  @media(max-width:900px){.ramerk-card-switch{width:48px;height:82px;font-size:27px}.ramerk-card-switch.prev{left:6px}.ramerk-card-switch.next{right:6px}.ramerk-card-switch span{display:none}.ramerk-card-home{right:8px;bottom:8px;padding:10px;font-size:8px}#ramerk-lightbox{padding:18px}}

/* Keep every solution card below the fixed site header. */
body.ramerk-has-global { padding-top: 110px !important; }
