.rv-whs-section{
  --rv-whs-blue:#1557f5;
  position:relative;
  isolation:isolate;
  width:100%;
  min-height:900px;
  overflow:hidden;
  background:
    radial-gradient(ellipse 38% 28% at 24% 0%,rgba(139,187,255,.28),transparent 72%),
    radial-gradient(ellipse 38% 28% at 76% 0%,rgba(139,187,255,.25),transparent 72%),
    radial-gradient(ellipse 52% 25% at 50% 100%,rgba(159,197,255,.22),transparent 72%),
    linear-gradient(180deg,#fff 0%,#fff 48%,#f8fbff 69%,#edf5ff 100%);
  color:#1d2230;
  font-family:Inter,Manrope,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.rv-whs-section *{box-sizing:border-box}
.rv-whs-section a{text-decoration:none}
.rv-whs-ambient{position:absolute;z-index:-1;border-radius:50%;filter:blur(70px);pointer-events:none}
.rv-whs-ambient-one{top:-130px;left:10%;width:430px;height:250px;background:rgba(93,157,255,.12)}
.rv-whs-ambient-two{top:-125px;right:10%;width:430px;height:250px;background:rgba(93,157,255,.11)}
.rv-whs-inner{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  align-items:center;
  width:min(100%,1560px);
  min-height:900px;
  margin:0 auto;
  padding:43px 20px 0;
}
.rv-whs-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  min-height:46px;
  padding:9px 20px;
  border:1px solid rgba(29,48,84,.07);
  border-radius:999px;
  background:rgba(255,255,255,.94);
  box-shadow:0 8px 24px rgba(45,74,126,.12);
  font-size:14px;
  font-weight:620;
  letter-spacing:-.01em;
  backdrop-filter:blur(12px);
}
.rv-whs-badge-icon{display:grid;place-items:center;width:22px;height:22px;color:var(--rv-whs-blue);font-size:16px}
.rv-whs-title{
  display:flex;
  flex-direction:column;
  align-items:center;
  width:100%;
  max-width:930px;
  margin:31px auto 0;
  color:#202534;
  text-align:center;
  font-size:clamp(40px,3.65vw,56px);
  font-weight:700;
  line-height:1.35;
  letter-spacing:-.04em;
}
.rv-whs-title>span:first-child{display:block}
.rv-whs-title-line{display:flex;align-items:baseline;justify-content:center;gap:.19em;flex-wrap:wrap}
.rv-whs-title strong{color:var(--rv-whs-blue);font-weight:720}
.rv-whs-description{
  max-width:680px;
  margin:21px auto 0;
  color:#555d6e;
  text-align:center;
  font-size:clamp(15px,1.15vw,18px);
  font-weight:430;
  line-height:1.58;
  letter-spacing:.008em;
}
.rv-whs-actions{display:flex;align-items:center;justify-content:center;gap:34px;margin-top:23px}
.rv-whs-primary,.rv-whs-secondary{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  min-height:45px;
  border-radius:11px;
  font-size:15px;
  font-weight:680;
  transition:transform .22s ease,box-shadow .22s ease,color .22s ease;
}
.rv-whs-primary{padding:10px 20px;background:linear-gradient(135deg,#2368ff,#064de3);box-shadow:0 10px 22px rgba(19,88,245,.24);color:#fff}
.rv-whs-primary svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.rv-whs-secondary{padding:10px 3px;color:#202636}
.rv-whs-secondary svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;transition:transform .22s ease}
.rv-whs-primary:hover{transform:translateY(-2px);box-shadow:0 14px 27px rgba(19,88,245,.3);color:#fff}
.rv-whs-secondary:hover{color:var(--rv-whs-blue)}
.rv-whs-secondary:hover svg{transform:translateX(5px)}
.rv-whs-gallery{
  position:relative;
  width:calc(100% + 250px);
  height:444px;
  margin-top:18px;
  overflow:hidden;
  touch-action:pan-y;
}
.rv-whs-gallery:before{
  content:"";
  position:absolute;
  z-index:7;
  inset:auto 0 0;
  height:90px;
  background:linear-gradient(180deg,transparent,rgba(237,245,255,.76) 68%,#edf5ff);
  pointer-events:none;
}
.rv-whs-gallery:after{
  content:"";
  position:absolute;
  z-index:6;
  inset:0;
  background:linear-gradient(90deg,#f4f9ff 0,transparent 8%,transparent 92%,#f4f9ff 100%);
  pointer-events:none;
}
.rv-whs-track{
  position:absolute;
  top:0;
  left:0;
  display:flex;
  align-items:flex-start;
  gap:18px;
  width:max-content;
  padding:8px 0 70px;
  transform:translate3d(var(--rv-whs-track-x,0px),0,0);
  will-change:transform;
}
.rv-whs-project{
  --rv-whs-live-y:22px;
  --rv-whs-live-rotate:0deg;
  --rv-whs-live-scale:.96;
  --rv-whs-live-opacity:.84;
  position:relative;
  width:332px;
  flex:0 0 332px;
  border:11px solid rgba(255,255,255,.97);
  border-radius:24px;
  background:#fff;
  box-shadow:0 19px 48px rgba(57,82,128,.15);
  opacity:var(--rv-whs-live-opacity);
  transform:translateY(var(--rv-whs-live-y)) rotate(var(--rv-whs-live-rotate)) scale(var(--rv-whs-live-scale));
  transform-origin:center bottom;
  transition:transform .34s cubic-bezier(.22,.61,.36,1),box-shadow .28s ease,opacity .28s ease,filter .28s ease;
  will-change:transform;
}
.rv-whs-project.is-active,.rv-whs-project:hover,.rv-whs-project:focus-within{
  z-index:5;
  opacity:1;
  filter:saturate(1.03);
  transform:translateY(calc(var(--rv-whs-live-y) - 8px)) rotate(0deg) scale(calc(var(--rv-whs-live-scale) + .035));
  box-shadow:0 27px 66px rgba(33,74,151,.22);
}
.rv-whs-project-link{display:block;color:#161b28;outline:none}
.rv-whs-project-link:focus-visible{border-radius:15px;box-shadow:0 0 0 3px rgba(21,87,245,.26)}
.rv-whs-project-media{height:218px;overflow:hidden;border-radius:14px;background:#eaf1ff}
.rv-whs-project-media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .55s ease}
.rv-whs-project:hover img,.rv-whs-project.is-active img{transform:scale(1.025)}
.rv-whs-project-footer{display:flex;align-items:center;justify-content:space-between;gap:13px;min-height:54px;padding:13px 4px 2px;font-size:15px;letter-spacing:-.02em}
.rv-whs-project-footer strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:540}
.rv-whs-project-arrow{display:grid;place-items:center;width:29px;height:29px;flex:0 0 auto;border-radius:999px;color:#151b29}
.rv-whs-project-arrow svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:transform .22s ease}
.rv-whs-project:hover .rv-whs-project-arrow svg,.rv-whs-project.is-active .rv-whs-project-arrow svg{transform:translateX(3px)}
.rv-whs-project-placeholder{position:relative;width:100%;height:100%;overflow:hidden;padding:20px;background:linear-gradient(145deg,#fff 0%,#edf3ff 65%,#d9e6ff 100%)}
.rv-whs-palette-2 .rv-whs-project-placeholder{background:linear-gradient(145deg,#fff8f0,#f2f7ff 62%,#e6efff)}
.rv-whs-palette-3 .rv-whs-project-placeholder{background:linear-gradient(145deg,#dcf9ff,#8dd9ff 52%,#7ccf6f)}
.rv-whs-palette-4 .rv-whs-project-placeholder{background:linear-gradient(145deg,#fff,#f0f4ff 62%,#cad8ff)}
.rv-whs-palette-5 .rv-whs-project-placeholder{background:linear-gradient(145deg,#1b1f39,#17162c 62%,#2f1a66);color:#fff}
.rv-whs-placeholder-bar{height:9px;width:72%;border-radius:999px;background:rgba(24,46,96,.12)}
.rv-whs-placeholder-copy{display:flex;flex-direction:column;align-items:center;justify-content:center;height:125px;text-align:center}
.rv-whs-placeholder-copy span{width:34px;height:6px;border-radius:999px;background:var(--rv-whs-blue);opacity:.8}
.rv-whs-placeholder-copy strong{max-width:250px;margin-top:12px;font-size:21px;line-height:1.08}
.rv-whs-placeholder-copy small{margin-top:7px;color:#6e7586;font-size:12px}
.rv-whs-palette-5 .rv-whs-placeholder-copy small{color:#aeb2c7}
.rv-whs-placeholder-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.rv-whs-placeholder-grid i{height:43px;border-radius:8px;background:rgba(255,255,255,.7);box-shadow:0 5px 18px rgba(55,79,123,.1)}
.rv-whs-palette-5 .rv-whs-placeholder-grid i{background:rgba(255,255,255,.12)}
.rv-whs-projects-badge{
  position:absolute;
  z-index:9;
  left:50%;
  bottom:84px;
  display:inline-flex;
  align-items:center;
  gap:11px;
  min-height:53px;
  padding:7px 18px 7px 9px;
  border:1px solid rgba(25,47,93,.08);
  border-radius:999px;
  background:rgba(255,255,255,.96);
  box-shadow:0 11px 29px rgba(49,79,132,.12);
  transform:translateX(-50%);
  font-size:14px;
  font-weight:520;
  white-space:nowrap;
  backdrop-filter:blur(12px);
}
.rv-whs-avatars{display:flex;align-items:center;padding-left:7px}
.rv-whs-avatars img,.rv-whs-avatars i{display:grid;place-items:center;width:37px;height:37px;margin-left:-7px;border:3px solid #fff;border-radius:50%;object-fit:cover;background:#17213a;color:#fff;font-style:normal;font-size:11px;font-weight:800}
.rv-whs-avatars img:nth-child(2),.rv-whs-avatars i:nth-child(2){background:#5d1838}
.rv-whs-avatars>*:first-child{margin-left:0}
.rv-whs-section.is-paused .rv-whs-project.is-active{box-shadow:0 29px 70px rgba(33,74,151,.24)}
@media(max-width:1180px){
  .rv-whs-section,.rv-whs-inner{min-height:850px}
  .rv-whs-inner{padding-top:38px}
  .rv-whs-title{max-width:850px;font-size:clamp(38px,4.25vw,51px)}
  .rv-whs-gallery{width:calc(100% + 130px);height:420px}
  .rv-whs-project{width:300px;flex-basis:300px}
  .rv-whs-project-media{height:198px}
  .rv-whs-projects-badge{bottom:70px}
}
@media(max-width:820px){
  .rv-whs-section,.rv-whs-inner{min-height:0}
  .rv-whs-inner{padding:30px 16px 34px}
  .rv-whs-badge{min-height:41px;padding:7px 14px;font-size:12px}
  .rv-whs-title{max-width:660px;margin-top:23px;font-size:clamp(32px,8.7vw,45px);line-height:1.16;letter-spacing:-.038em}
  .rv-whs-title-line{gap:.16em}
  .rv-whs-description{max-width:570px;margin-top:17px;font-size:15px;line-height:1.5}
  .rv-whs-description br{display:none}
  .rv-whs-actions{gap:17px;margin-top:20px}
  .rv-whs-primary,.rv-whs-secondary{min-height:43px;font-size:14px}
  .rv-whs-primary{padding:9px 16px}
  .rv-whs-gallery{width:calc(100% + 32px);height:345px;margin-top:18px}
  .rv-whs-gallery:after{background:linear-gradient(90deg,#f4f9ff 0,transparent 4%,transparent 96%,#f4f9ff 100%)}
  .rv-whs-track{gap:13px;padding-top:8px}
  .rv-whs-project{width:min(76vw,295px);flex-basis:min(76vw,295px);border-width:9px;border-radius:21px}
  .rv-whs-project-media{height:190px}
  .rv-whs-project-footer{min-height:49px;padding-top:11px;font-size:14px}
  .rv-whs-projects-badge{position:relative;left:auto;bottom:auto;margin-top:-17px;transform:none;font-size:13px}
}
@media(max-width:520px){
  .rv-whs-inner{padding-inline:13px}
  .rv-whs-title{font-size:clamp(30px,9.4vw,40px)}
  .rv-whs-actions{flex-wrap:wrap;gap:7px 18px}
  .rv-whs-primary{width:100%;max-width:210px}
  .rv-whs-secondary{padding-inline:7px}
  .rv-whs-gallery{width:calc(100% + 26px);height:315px}
  .rv-whs-project{width:78vw;flex-basis:78vw}
  .rv-whs-project-media{height:172px}
  .rv-whs-project-footer{font-size:13px}
  .rv-whs-projects-badge{max-width:95%;white-space:normal;text-align:left}
  .rv-whs-avatars img,.rv-whs-avatars i{width:33px;height:33px}
}
@media(prefers-reduced-motion:reduce){
  .rv-whs-track,.rv-whs-project,.rv-whs-project-media img{transition:none!important}
}

/* 2026-07-30 reference-size and visibility hardening */
.rv-finoptiz-sections .rv-whs-section,
section.rv-whs-section{
  min-height:900px!important;
}
.rv-finoptiz-sections .rv-whs-section .rv-whs-inner,
section.rv-whs-section .rv-whs-inner{
  min-height:900px!important;
  padding-top:172px!important;
}
.rv-finoptiz-sections .rv-whs-section h1.rv-whs-title,
section.rv-whs-section h1.rv-whs-title{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  width:100%!important;
  max-width:1040px!important;
  margin:28px auto 0!important;
  padding:0!important;
  color:#202534!important;
  text-align:center!important;
  font-family:Inter,Manrope,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:clamp(38px,3.65vw,54px)!important;
  font-weight:680!important;
  line-height:1.28!important;
  letter-spacing:-.043em!important;
  text-transform:none!important;
}
.rv-finoptiz-sections .rv-whs-section h1.rv-whs-title>span,
.rv-finoptiz-sections .rv-whs-section h1.rv-whs-title strong,
section.rv-whs-section h1.rv-whs-title>span,
section.rv-whs-section h1.rv-whs-title strong{
  font:inherit!important;
  font-size:inherit!important;
  line-height:inherit!important;
  letter-spacing:inherit!important;
  text-transform:none!important;
}
.rv-finoptiz-sections .rv-whs-section h1.rv-whs-title>.rv-whs-title-line,
section.rv-whs-section h1.rv-whs-title>.rv-whs-title-line{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:baseline!important;
  justify-content:center!important;
  gap:.18em!important;
}
.rv-finoptiz-sections .rv-whs-section h1.rv-whs-title strong,
section.rv-whs-section h1.rv-whs-title strong{
  color:var(--rv-whs-blue)!important;
  font-weight:720!important;
}
.rv-finoptiz-sections .rv-whs-section .rv-whs-description,
section.rv-whs-section .rv-whs-description{
  max-width:680px!important;
  margin-top:19px!important;
  font-size:17px!important;
  line-height:1.55!important;
}
.rv-finoptiz-sections .rv-whs-section .rv-whs-actions,
section.rv-whs-section .rv-whs-actions{margin-top:21px!important}
.rv-whs-section.rv-whs-no-projects,
.rv-whs-section.rv-whs-no-projects .rv-whs-inner{min-height:520px!important}
.rv-whs-section.rv-whs-no-projects .rv-whs-inner{padding-bottom:72px!important}
@media(max-width:1180px){
  .rv-finoptiz-sections .rv-whs-section h1.rv-whs-title,
  section.rv-whs-section h1.rv-whs-title{max-width:900px!important;font-size:clamp(36px,4.15vw,49px)!important}
}
@media(max-width:820px){
  .rv-finoptiz-sections .rv-whs-section,
  .rv-finoptiz-sections .rv-whs-section .rv-whs-inner,
  section.rv-whs-section,
  section.rv-whs-section .rv-whs-inner{min-height:0!important}
  .rv-finoptiz-sections .rv-whs-section .rv-whs-inner,
  section.rv-whs-section .rv-whs-inner{padding:28px 16px 34px!important}
  .rv-finoptiz-sections .rv-whs-section h1.rv-whs-title,
  section.rv-whs-section h1.rv-whs-title{max-width:680px!important;margin-top:22px!important;font-size:clamp(30px,7.4vw,42px)!important;line-height:1.16!important}
  .rv-finoptiz-sections .rv-whs-section .rv-whs-description,
  section.rv-whs-section .rv-whs-description{font-size:15px!important;margin-top:16px!important}
}
@media(max-width:520px){
  .rv-finoptiz-sections .rv-whs-section h1.rv-whs-title,
  section.rv-whs-section h1.rv-whs-title{font-size:clamp(28px,8.2vw,36px)!important;line-height:1.14!important;letter-spacing:-.036em!important}
}

/* Pointer-drag and touch-swipe carousel controls. */
.rv-whs-gallery{cursor:grab;touch-action:pan-y pinch-zoom;overscroll-behavior-x:contain;-webkit-user-select:none;user-select:none}
.rv-whs-gallery.is-dragging{cursor:grabbing}
.rv-whs-gallery.is-dragging .rv-whs-project-link{pointer-events:none}
.rv-whs-gallery img{-webkit-user-drag:none;user-drag:none;user-select:none}
@media(max-width:820px){
  .rv-whs-gallery{height:330px;margin-top:16px}
  .rv-whs-track{gap:12px;padding-bottom:54px}
  .rv-whs-project{width:min(78vw,286px);flex-basis:min(78vw,286px)}
  .rv-whs-project-media{height:184px}
}
@media(max-width:520px){
  .rv-whs-inner{padding-left:12px!important;padding-right:12px!important}
  .rv-whs-gallery{width:calc(100% + 24px);height:300px;margin-left:-12px;margin-right:-12px}
  .rv-whs-track{gap:10px;padding-left:10px;padding-right:10px}
  .rv-whs-project{width:82vw;flex-basis:82vw;border-width:8px;border-radius:19px}
  .rv-whs-project-media{height:166px;border-radius:12px}
  .rv-whs-project-footer{min-height:46px;padding-top:9px}
}
