.home-site-map-block{margin-top:64px;padding-top:54px;border-top:1px solid #dbe3ed}.home-site-map-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,430px);gap:48px;align-items:end;margin-bottom:26px}.home-site-map-heading span{display:block;color:#0f6fff;font-size:9px;font-weight:800;letter-spacing:.18em}.home-site-map-heading h3{margin:9px 0 0;color:#0b1220;font-size:clamp(32px,3vw,48px);line-height:1.12;letter-spacing:-.02em}.home-site-map-heading p{margin:0;color:#64748b;font-size:13px;line-height:1.8}.home-site-map-shell{position:relative;overflow:hidden;border:1px solid #d7e0eb;border-radius:24px;background:#eaf0f6;box-shadow:0 24px 60px rgba(15,23,42,.08)}.home-site-map{width:100%;height:clamp(620px,42vw,690px)}.home-site-map-status{position:absolute;z-index:3;left:50%;top:50%;transform:translate(-50%,-50%);padding:11px 15px;border:1px solid rgba(15,23,42,.08);border-radius:999px;background:rgba(255,255,255,.92);color:#536174;font-size:12px;box-shadow:0 12px 32px rgba(15,23,42,.12);backdrop-filter:blur(10px);pointer-events:none}.home-site-map-status[hidden]{display:none}

.home-map-site-marker{position:relative;width:104px;cursor:pointer;transform:translateY(-3px);filter:drop-shadow(0 8px 15px rgba(15,23,42,.18));transition:width .24s ease,transform .24s ease,filter .24s ease}.home-map-site-marker:hover,.home-map-site-marker:focus-visible{transform:translateY(-6px);filter:drop-shadow(0 11px 20px rgba(15,23,42,.24));outline:none}.home-map-site-marker.is-selected{width:138px;z-index:8;transform:translateY(-7px);filter:drop-shadow(0 16px 28px rgba(15,23,42,.3))}.home-map-site-marker-card{overflow:hidden;border:1px solid rgba(255,255,255,.98);border-radius:10px;background:#fff;box-shadow:0 0 0 1px rgba(9,58,127,.1)}.home-map-site-marker-media{position:relative;height:50px;overflow:hidden;background:linear-gradient(145deg,#dbeafe,#b9d8ff);transition:height .24s ease}.home-map-site-marker.is-selected .home-map-site-marker-media{height:70px}.home-map-site-marker-media img{width:100%;height:100%;object-fit:cover;display:block}.home-map-site-marker-media:after{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(3,12,25,.22))}.home-map-site-marker-media:before{display:none!important}.home-map-site-marker-link{position:absolute;z-index:3;top:5px;right:5px;display:grid;place-items:center;width:19px;height:19px;border:1px solid rgba(255,255,255,.76);border-radius:50%;background:rgba(5,25,52,.82);color:#fff;font-size:10px;font-weight:800;line-height:1;box-shadow:0 4px 10px rgba(0,0,0,.2);backdrop-filter:blur(5px);transition:transform .2s ease,background .2s ease}.home-map-site-marker-link:hover,.home-map-site-marker-link:focus-visible{transform:translate(1px,-1px);background:#0f6fff;outline:none}.home-map-site-marker-empty{display:grid;place-items:center;width:100%;height:100%;color:#35689e;font-size:9px;font-weight:800;letter-spacing:.08em}.home-map-site-marker-copy{display:grid;gap:2px;padding:6px 7px 7px}.home-map-site-marker-copy strong{overflow:hidden;color:#111827;font-size:9px;font-weight:760;line-height:1.2;letter-spacing:-.018em;white-space:nowrap;text-overflow:ellipsis}.home-map-site-marker-copy span{display:none;overflow:hidden;color:#748196;font-size:7px;line-height:1.3;white-space:nowrap;text-overflow:ellipsis}.home-map-site-marker.is-selected .home-map-site-marker-copy{padding:8px 9px 9px}.home-map-site-marker.is-selected .home-map-site-marker-copy strong{font-size:11px}.home-map-site-marker.is-selected .home-map-site-marker-copy span{display:block}.home-map-site-marker-tip{position:absolute;left:50%;bottom:-6px;width:12px;height:12px;transform:translateX(-50%) rotate(45deg);border-right:1px solid #fff;border-bottom:1px solid #fff;background:#fff;box-shadow:3px 3px 5px rgba(15,23,42,.06)}

.home-site-map.is-map-distant .home-map-site-marker:not(.is-selected){width:38px;filter:drop-shadow(0 5px 9px rgba(15,23,42,.15))}.home-site-map.is-map-distant .home-map-site-marker:not(.is-selected) .home-map-site-marker-card{border-radius:8px}.home-site-map.is-map-distant .home-map-site-marker:not(.is-selected) .home-map-site-marker-media{height:34px}.home-site-map.is-map-distant .home-map-site-marker:not(.is-selected) .home-map-site-marker-copy{display:none}.home-site-map.is-map-distant .home-map-site-marker:not(.is-selected) .home-map-site-marker-link{width:14px;height:14px;top:2px;right:2px;font-size:7px}.home-site-map.is-map-distant .home-map-site-marker:not(.is-selected) .home-map-site-marker-tip{bottom:-4px;width:8px;height:8px}

.home-site-map .map_type{margin:12px!important}.home-site-map .zoom_control{margin:12px!important}.home-site-map-mobile-zoom{display:none}

@media (min-width:768px) and (max-width:1199px) and (orientation:portrait) and (hover:none),
       (min-width:768px) and (max-width:1199px) and (orientation:portrait) and (pointer:coarse){
    .home-site-map-block{margin-top:48px;padding-top:42px}.home-site-map{height:390px}
    .home-map-site-marker{width:82px}.home-map-site-marker.is-selected{width:112px}.home-map-site-marker-media{height:40px}.home-map-site-marker.is-selected .home-map-site-marker-media{height:56px}.home-map-site-marker-link{top:4px;right:4px;width:17px;height:17px;font-size:9px}.home-map-site-marker-copy{padding:5px 6px 6px}.home-map-site-marker-copy strong{font-size:8px}.home-map-site-marker.is-selected .home-map-site-marker-copy strong{font-size:9.5px}.home-map-site-marker.is-selected .home-map-site-marker-copy span{font-size:6.8px}.home-map-site-marker-tip{bottom:-5px;width:10px;height:10px}
}
@media (min-width:768px) and (max-width:1366px) and (orientation:landscape) and (hover:none),
       (min-width:768px) and (max-width:1366px) and (orientation:landscape) and (pointer:coarse){
    .home-site-map-block{margin-top:44px;padding-top:38px}.home-site-map{height:clamp(340px,58vh,430px)}
    .home-map-site-marker{width:78px}.home-map-site-marker.is-selected{width:108px}.home-map-site-marker-media{height:38px}.home-map-site-marker.is-selected .home-map-site-marker-media{height:54px}.home-map-site-marker-link{top:4px;right:4px;width:16px;height:16px;font-size:8px}.home-map-site-marker-copy{padding:5px 6px}.home-map-site-marker-copy strong{font-size:7.8px}.home-map-site-marker.is-selected .home-map-site-marker-copy strong{font-size:9px}.home-map-site-marker.is-selected .home-map-site-marker-copy span{font-size:6.5px}.home-map-site-marker-tip{bottom:-5px;width:10px;height:10px}
}

@media (max-width:767px) and (orientation:portrait) and (hover:none),
       (max-width:767px) and (orientation:portrait) and (pointer:coarse){
    .home-site-map-block{margin-top:38px;padding-top:34px}.home-site-map-heading{display:block;margin-bottom:18px}.home-site-map-heading h3{font-size:31px}.home-site-map-heading p{margin-top:12px;font-size:12px}.home-site-map-shell{border-radius:18px}.home-site-map{height:300px}
    .home-map-site-marker{width:58px;filter:drop-shadow(0 5px 8px rgba(15,23,42,.14))}.home-map-site-marker.is-selected{width:86px}.home-map-site-marker-media{height:28px}.home-map-site-marker.is-selected .home-map-site-marker-media{height:42px}.home-map-site-marker-link{top:2px;right:2px;width:13px;height:13px;font-size:7px;box-shadow:0 2px 6px rgba(0,0,0,.18)}.home-map-site-marker-card{border-radius:7px}.home-map-site-marker-copy{padding:3px 4px 4px}.home-map-site-marker-copy strong{font-size:6.6px;line-height:1.1}.home-map-site-marker.is-selected .home-map-site-marker-copy{padding:5px 6px 6px}.home-map-site-marker.is-selected .home-map-site-marker-copy strong{font-size:8px}.home-map-site-marker.is-selected .home-map-site-marker-copy span{font-size:6px}.home-map-site-marker-tip{bottom:-3px;width:7px;height:7px}.home-site-map.is-map-distant .home-map-site-marker:not(.is-selected){width:30px}.home-site-map.is-map-distant .home-map-site-marker:not(.is-selected) .home-map-site-marker-media{height:27px}.home-site-map.is-map-distant .home-map-site-marker:not(.is-selected) .home-map-site-marker-link{display:none}
    .home-site-map-mobile-zoom{position:absolute;z-index:8;right:10px;top:50px;display:grid;overflow:hidden;border:1px solid rgba(15,23,42,.14);border-radius:10px;background:rgba(255,255,255,.96);box-shadow:0 6px 18px rgba(15,23,42,.14);backdrop-filter:blur(8px)}.home-site-map-mobile-zoom button{display:grid;place-items:center;width:38px;height:38px;padding:0;border:0;background:transparent;color:#263445;font-size:25px;font-weight:500;line-height:1;cursor:pointer}.home-site-map-mobile-zoom button+button{border-top:1px solid #e2e8f0}.home-site-map-mobile-zoom button:active{background:#eef4fb}
}
@media (max-width:932px) and (orientation:landscape) and (hover:none),
       (max-width:932px) and (orientation:landscape) and (pointer:coarse){
    .home-site-map-block{margin-top:32px;padding-top:28px}.home-site-map-heading{grid-template-columns:minmax(0,1fr) minmax(220px,340px);gap:24px;margin-bottom:14px}.home-site-map-heading h3{font-size:28px}.home-site-map-heading p{font-size:11px;line-height:1.55}.home-site-map-shell{border-radius:16px}.home-site-map{height:clamp(280px,62vh,340px)}
    .home-map-site-marker{width:56px;filter:drop-shadow(0 4px 7px rgba(15,23,42,.13))}.home-map-site-marker.is-selected{width:84px}.home-map-site-marker-media{height:27px}.home-map-site-marker.is-selected .home-map-site-marker-media{height:40px}.home-map-site-marker-link{top:2px;right:2px;width:12px;height:12px;font-size:6px}.home-map-site-marker-copy{padding:3px 4px}.home-map-site-marker-copy strong{font-size:6.4px}.home-map-site-marker.is-selected .home-map-site-marker-copy strong{font-size:7.8px}.home-map-site-marker.is-selected .home-map-site-marker-copy span{font-size:5.8px}.home-map-site-marker-tip{bottom:-3px;width:7px;height:7px}.home-site-map.is-map-distant .home-map-site-marker:not(.is-selected){width:29px}.home-site-map.is-map-distant .home-map-site-marker:not(.is-selected) .home-map-site-marker-media{height:26px}.home-map-site-map.is-map-distant .home-map-site-marker:not(.is-selected) .home-map-site-marker-link{display:none}
}

/* === Consolidated map marker styles: airy & clear === */
.home-map-site-marker{
  position:relative;
  display:inline-flex;
  align-items:center;
  gap:9px;
  width:max-content;
  max-width:none;
  min-width:0;
  min-height:38px;
  padding:8px 12px 8px 11px;
  border:1px solid #c9dcf3;
  border-radius:999px;
  background:#fff;
  color:#203650;
  box-shadow:0 4px 14px rgba(34,73,117,.12),0 1px 2px rgba(26,72,120,.04);
  cursor:pointer;
  transform:translateY(-3px);
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
  white-space:nowrap;
}
.home-map-site-marker::before{
  content:"";
  width:8px;
  height:8px;
  flex:0 0 8px;
  border-radius:50%;
  background:#31a8ed;
  box-shadow:0 0 0 4px #e5f6ff;
}
.home-map-site-marker:hover,
.home-map-site-marker:focus-visible{
  z-index:30;
  transform:translateY(-6px);
  border-color:#72baf0;
  box-shadow:0 9px 23px rgba(35,92,150,.19),0 0 0 3px rgba(76,172,235,.12);
  outline:none;
}
.home-map-site-marker strong{
  display:block;
  flex:0 0 auto;
  width:auto;
  max-width:none!important;
  overflow:visible!important;
  color:#163250;
  font-size:11px;
  font-weight:800;
  line-height:1.2;
  letter-spacing:-.025em;
  text-overflow:clip!important;
  white-space:nowrap;
}
.home-map-site-marker-arrow{
  display:grid;
  place-items:center;
  width:22px;
  height:22px;
  min-width:22px;
  flex:0 0 22px;
  margin-left:1px;
  padding:0;
  border:0!important;
  border-radius:50%!important;
  background:#eef7ff!important;
  color:#2688d9;
  font-size:12px;
  font-weight:900;
  line-height:1;
  box-shadow:none!important;
  transition:background .18s ease,color .18s ease;
}
.home-map-site-marker:hover .home-map-site-marker-arrow,
.home-map-site-marker:focus-visible .home-map-site-marker-arrow{
  background:#dbefff!important;
  color:#1266b5;
}
.home-map-site-marker-tip{
  position:absolute;
  left:50%;
  bottom:-5px;
  width:9px;
  height:9px;
  transform:translateX(-50%) rotate(45deg);
  border-right:1px solid #c9dcf3;
  border-bottom:1px solid #c9dcf3;
  background:#fff;
}
.home-map-site-marker:hover .home-map-site-marker-tip,
.home-map-site-marker:focus-visible .home-map-site-marker-tip{
  border-color:#72baf0;
}

.home-map-site-modal[hidden]{display:none}.home-map-site-modal{position:fixed;z-index:2147483000;inset:0;display:grid;place-items:center;padding:24px;isolation:isolate}.home-map-site-modal-backdrop{position:absolute;inset:0;background:rgba(4,12,25,.72);backdrop-filter:blur(5px)}.home-map-site-modal-card{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);width:min(980px,calc(100% - 28px));max-height:calc(100% - 28px);overflow:hidden;border:1px solid rgba(255,255,255,.4);border-radius:22px;background:#fff;box-shadow:0 30px 80px rgba(2,8,23,.38)}.home-map-site-modal-card:focus{outline:none}.home-map-site-modal-close{position:absolute;z-index:5;top:14px;right:14px;display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(255,255,255,.7);border-radius:50%;background:rgba(4,12,25,.72);color:#fff;font-size:25px;line-height:1;cursor:pointer;backdrop-filter:blur(6px)}.home-map-site-modal-media{min-height:360px;background:linear-gradient(145deg,#dbeafe,#b8d2f3)}.home-map-site-modal-media img{display:block;width:100%;height:100%;object-fit:cover}.home-map-site-modal-empty{display:grid;place-items:center;width:100%;height:100%;min-height:360px;color:#245b9f;font-size:18px;font-weight:900;letter-spacing:.12em}.home-map-site-modal-body{display:flex;min-width:0;flex-direction:column;padding:34px 34px 28px}.home-map-site-modal-heading>span{color:#0f6fff;font-size:9px;font-weight:950;letter-spacing:.18em}.home-map-site-modal-heading h3{margin:10px 0 7px;color:#0b1220;font-size:28px;line-height:1.15;letter-spacing:-.045em}.home-map-site-modal-heading p{margin:0;color:#64748b;font-size:11px;line-height:1.55}.home-map-site-modal-info{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:24px 0 0;border-top:1px solid #e4eaf1;border-bottom:1px solid #e4eaf1}.home-map-site-modal-info>div{padding:15px 0}.home-map-site-modal-info>div+div{padding-left:18px;border-left:1px solid #e4eaf1}.home-map-site-modal-info dt{color:#8a97a9;font-size:9px;font-weight:800}.home-map-site-modal-info dd{margin:5px 0 0;color:#162033;font-size:14px;font-weight:900}.home-map-site-modal-units{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:18px}.home-map-site-modal-units>div{min-width:0;padding:15px 13px;border:1px solid #dce5ef;border-radius:13px;background:#f7faff}.home-map-site-modal-units span{display:block;color:#6d7b8e;font-size:9px;font-weight:800;white-space:nowrap}.home-map-site-modal-units strong{display:inline-block;margin-top:6px;color:#0f6fff;font-size:25px;line-height:1;font-weight:950}.home-map-site-modal-units small{margin-left:3px;color:#64748b;font-size:10px;font-weight:800}.home-map-site-modal-unit-note{margin:9px 2px 0;color:#8a97a9;font-size:8.5px;font-weight:650;line-height:1.55;letter-spacing:-.025em}.home-map-site-modal-actions{display:grid;grid-template-columns:1fr auto;gap:9px;margin-top:auto;padding-top:20px}.home-map-site-modal-actions a,.home-map-site-modal-actions button{display:flex;align-items:center;justify-content:center;min-height:46px;border-radius:11px;font-size:11px;font-weight:900}.home-map-site-modal-actions a{gap:12px;background:#0f6fff;color:#fff;box-shadow:0 9px 22px rgba(15,111,255,.2)}.home-map-site-modal-actions a:hover{background:#075bd7}.home-map-site-modal-actions button{padding:0 18px;border:1px solid #d9e1eb;background:#fff;color:#334155;cursor:pointer}.home-map-modal-open{overflow:hidden}

@media(max-width:900px){.home-map-site-modal{padding:14px}.home-map-site-modal-card{grid-template-columns:1fr;width:min(620px,calc(100% - 12px));max-height:calc(100% - 12px);overflow:auto}.home-map-site-modal-media{min-height:220px;max-height:280px}.home-map-site-modal-empty{min-height:220px}.home-map-site-modal-body{padding:24px}.home-map-site-modal-close{top:10px;right:10px}}
@media(max-width:600px){.home-map-site-marker{gap:7px;min-height:33px;padding:6px 9px}.home-map-site-marker::before{width:6px;height:6px;flex-basis:6px;box-shadow:0 0 0 3px #e5f6ff}.home-map-site-marker strong{font-size:9px}.home-map-site-marker-arrow{width:19px;min-width:19px;height:19px;flex-basis:19px;font-size:11px}.home-map-site-marker-tip{bottom:-4px;width:7px;height:7px}.home-map-site-modal{height:100svh;padding:clamp(14px,4vw,22px);overflow:hidden;place-items:center}.home-map-site-modal-card{grid-template-columns:1fr;grid-template-rows:auto auto;width:min(560px,100%);height:auto;max-height:calc(100svh - 28px);overflow:hidden;border-radius:18px}.home-map-site-modal-media{min-height:0;max-height:none;height:clamp(150px,24svh,205px);overflow:hidden}.home-map-site-modal-media img{height:100%;object-fit:cover}.home-map-site-modal-empty{min-height:0;height:100%}.home-map-site-modal-body{min-height:0;overflow:hidden;padding:13px 14px 14px}.home-map-site-modal-close{top:8px;right:8px;width:34px;height:34px;font-size:22px}.home-map-site-modal-heading>span{font-size:8px}.home-map-site-modal-heading h3{margin:5px 0 3px;font-size:20px;line-height:1.08}.home-map-site-modal-heading p{font-size:9px;line-height:1.3}.home-map-site-modal-info{grid-template-columns:1fr 1fr;margin-top:9px}.home-map-site-modal-info>div{padding:7px 0}.home-map-site-modal-info>div+div{padding-left:12px;border-top:0;border-left:1px solid #e4eaf1}.home-map-site-modal-info dt{font-size:8px}.home-map-site-modal-info dd{margin-top:3px;font-size:12px}.home-map-site-modal-units{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin-top:9px}.home-map-site-modal-units>div{padding:8px 6px;border-radius:10px}.home-map-site-modal-units span{font-size:7.5px}.home-map-site-modal-units strong{margin-top:4px;font-size:19px}.home-map-site-modal-units small{font-size:8px}.home-map-site-modal-unit-note{margin:5px 1px 0;font-size:7.5px;line-height:1.3}.home-map-site-modal-actions{grid-template-columns:minmax(0,1fr) auto;gap:6px;margin-top:10px;padding-top:0}.home-map-site-modal-actions a,.home-map-site-modal-actions button{min-height:38px;border-radius:9px;font-size:9.5px}.home-map-site-modal-actions a{gap:7px}.home-map-site-modal-actions button{min-height:38px;padding:0 13px}}

/* === Homepage renewal === */
:root{--home-rv-ink:#101d33;--home-rv-muted:#64748b;--home-rv-line:#dfe6ef;--home-rv-soft:#f5f8fc;--home-rv-blue:#0f63e9;--home-rv-blue-soft:#eaf2ff;--home-rv-navy:#0a1830;--home-rv-white:#fff;--home-rv-radius:20px;--home-rv-shadow:0 18px 50px rgba(15,35,65,.09)}
.home-rv{background:#fff;color:var(--home-rv-ink);font-family:inherit;overflow:hidden}
.home-rv *{box-sizing:border-box}
.home-rv a{text-decoration:none}
.home-rv-shell{width:min(1240px,calc(100% - 40px));margin:0 auto}
.home-rv-eyebrow{display:inline-flex;align-items:center;gap:8px;margin:0 0 16px;color:#8ba0bc;font-size:12px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.home-rv-eyebrow:before{content:"";width:24px;height:1px;background:currentColor}
.home-rv-section{padding:92px 0}
.home-rv-section-head{display:flex;justify-content:space-between;gap:40px;align-items:flex-end;margin-bottom:38px}
.home-rv-section-head h2{margin:0;font-size:clamp(34px,4vw,58px);line-height:1.03;letter-spacing:-.055em}
.home-rv-section-head p{max-width:460px;margin:0;color:var(--home-rv-muted);font-size:16px;line-height:1.75}
.home-rv-link{display:inline-flex;align-items:center;gap:9px;color:var(--home-rv-blue);font-size:14px;font-weight:850}
.home-rv-link:hover{gap:13px}

.home-rv-hero{position:relative;padding:52px 0 30px;overflow:hidden;border-bottom:1px solid #e9eef5;background-color:#fff;background-image:none;background-size:cover;background-position:center center;background-repeat:no-repeat}
.home-rv-hero:before,.home-rv-hero:after{content:none!important;display:none!important;background:none!important;opacity:0!important;filter:none!important}
.home-rv-hero>.home-rv-shell{position:relative;z-index:2}
.home-rv-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.92fr);gap:56px;align-items:center;min-height:500px}
.home-rv-hero-copy{padding:28px 0 18px}
.home-rv-hero .home-rv-eyebrow{margin-bottom:28px;color:#2774df;font-size:11px;letter-spacing:.2em}
.home-rv-hero .home-rv-eyebrow:before{width:30px;background:#2774df}
.home-rv-hero h1{max-width:720px;margin:0;font-size:clamp(42px,4.4vw,62px);line-height:1.07;letter-spacing:-.055em;font-weight:850}
.home-rv-hero h1>span:first-child{display:block;color:#0b1930}
.home-rv-hero-rotator{position:relative;display:grid;min-height:2.08em;margin-top:8px;overflow:hidden}
.home-rv-hero-rotator em{grid-area:1/1;align-self:start;display:block;color:#176df0;font-style:normal;opacity:0;transform:translateY(14px);transition:opacity .38s ease,transform .38s cubic-bezier(.2,.75,.2,1)}
.home-rv-hero-rotator em.is-active{opacity:1;transform:translateY(0)}
.home-rv-hero-rotator em.is-leaving{opacity:0;transform:translateY(-10px)}
.home-rv-hero-lead{max-width:610px;margin:24px 0 0;color:#4f6177;font-size:17px;line-height:1.75}
.home-rv-hero-visual{position:relative;min-height:500px;display:flex;align-items:center;justify-content:flex-end}
.home-rv-compare-guide{position:relative;z-index:2;width:min(500px,94%);padding:34px 36px;border:1px solid rgba(221,231,243,.92);border-radius:22px;background:rgba(255,255,255,.84);box-shadow:0 22px 58px rgba(61,103,158,.12);backdrop-filter:blur(16px);overflow:hidden}
.home-rv-compare-guide:before{content:"";position:absolute;right:-100px;bottom:-130px;width:330px;height:330px;border-radius:48% 52% 0 0;background:linear-gradient(145deg,rgba(223,239,255,.72),rgba(243,248,255,.10));transform:rotate(-11deg);pointer-events:none}
.home-rv-compare-guide-kicker{position:relative;z-index:1;display:inline-flex;padding:7px 13px;border-radius:999px;background:rgba(237,245,255,.92);color:#176df0;font-size:10px;font-weight:900;letter-spacing:.16em}
.home-rv-compare-guide h2{position:relative;z-index:1;margin:24px 0 0;color:#0a1730;font-size:42px;line-height:1;letter-spacing:-.05em}
.home-rv-compare-guide>p{position:relative;z-index:1;max-width:430px;margin:15px 0 0;color:#66768c;font-size:15px;line-height:1.7}
.home-rv-compare-guide-points{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}
.home-rv-compare-guide-points span{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border:1px solid rgba(220,232,246,.94);border-radius:999px;background:rgba(255,255,255,.82);color:#53667e;font-size:11px;font-weight:800}
.home-rv-compare-guide-points span:before{content:"✓";margin-right:6px;color:#176df0;font-weight:900}
.home-rv-compare-guide-button{position:relative;z-index:1;width:100%;min-height:54px;border:0;border-radius:13px;background:#176df0;color:#fff;font:inherit;font-size:14px;font-weight:900;cursor:pointer;box-shadow:0 12px 28px rgba(23,109,240,.20);transition:transform .18s ease,background .18s ease}
.home-rv-compare-guide-button:hover{background:#0e61df;transform:translateY(-1px)}
.home-rv-quick{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:20px}
.home-rv-quick a{display:grid;grid-template-columns:46px 1fr auto;align-items:center;gap:14px;min-height:94px;padding:16px 18px;border:1px solid rgba(223,231,241,.96);border-radius:16px;background:rgba(255,255,255,.90);color:#101d33;box-shadow:0 10px 30px rgba(37,61,91,.055);backdrop-filter:blur(10px)}
.home-rv-quick-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:12px;background:#eaf2ff;color:#176df0;font-size:20px;font-weight:900}
.home-rv-quick strong{display:block;font-size:15px}
.home-rv-quick small{display:block;margin-top:4px;color:#8796aa;font-size:11px}
.home-rv-quick b{font-size:18px;color:#7e8da0}


.home-rv-available{background:#fff}
.home-rv-available>.home-rv-shell{position:relative}
.home-rv-available-head-side{display:grid;justify-items:end;gap:14px}
.home-rv-available-head-side>p{max-width:460px;text-align:left}
/* Compare CTA: 카드 우측 끝에 절반 걸치도록 배치하고, 짙은 네이비 배경과 선명한 텍스트로 정리한다. */
.home-rv-selected-compare-wrap{position:absolute;right:-107px;top:50%;bottom:auto;z-index:14;width:214px;transform:translateY(-50%)}
.home-rv-selected-compare-wrap[hidden]{display:none!important}
.home-rv-selected-compare-start{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:54px;padding:0 20px;border:0;border-radius:16px;background:#07111f;color:#fff;font:inherit;cursor:pointer;white-space:nowrap;box-shadow:0 14px 28px rgba(7,17,31,.18);transition:background-color .18s ease,box-shadow .18s ease;-webkit-font-smoothing:auto;text-rendering:optimizeLegibility}
.home-rv-selected-compare-start span,.home-rv-selected-compare-start strong{display:inline-flex;align-items:center;color:#fff;line-height:1;letter-spacing:-.025em;text-shadow:none}
.home-rv-selected-compare-start span{font-size:13px;font-weight:900}
.home-rv-selected-compare-start span b{color:#fff;font-size:13px;font-weight:900}
.home-rv-selected-compare-start strong{font-size:14px;font-weight:900}
.home-rv-selected-compare-start:hover{background:#0b1728;box-shadow:0 16px 30px rgba(7,17,31,.22)}
.home-rv-selected-compare-start:focus-visible{outline:3px solid rgba(7,17,31,.16);outline-offset:3px}
.home-rv-selected-compare-clear{position:absolute;top:-11px;right:-11px;z-index:2;display:grid;place-items:center;width:30px;height:30px;padding:0;border:1px solid #d7e0e9;border-radius:50%;background:#fff;color:#17324b;font:700 21px/1 Arial,sans-serif;cursor:pointer;box-shadow:0 6px 18px rgba(7,17,31,.18);transition:transform .16s ease,box-shadow .16s ease}
.home-rv-selected-compare-clear:hover{transform:scale(1.05);box-shadow:0 8px 22px rgba(7,17,31,.24)}
.home-rv-selected-compare-clear:focus-visible{outline:3px solid rgba(31,111,235,.24);outline-offset:2px}
.home-rv-card-grid{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.home-rv-site-card{overflow:hidden;border:1px solid var(--home-rv-line);border-radius:20px;background:#fff;box-shadow:0 12px 38px rgba(20,43,75,.06);transition:transform .2s ease,box-shadow .2s ease}
.home-rv-site-card:hover{transform:translateY(-4px);box-shadow:0 22px 50px rgba(20,43,75,.1)}
.home-rv-site-media{position:relative;height:210px;background:#eaf0f7;overflow:hidden}
.home-rv-site-media img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.home-rv-site-card:hover .home-rv-site-media img{transform:scale(1.025)}
.home-rv-site-badge{position:absolute;top:14px;left:14px;padding:7px 10px;border-radius:999px;background:#fff;color:var(--home-rv-blue);font-size:11px;font-weight:900;box-shadow:0 8px 20px rgba(20,43,75,.11)}
.home-rv-site-body{padding:20px}
.home-rv-site-kicker{display:block;color:#8b9bb0;font-size:11px;font-weight:800;letter-spacing:.07em}
.home-rv-site-body h3{margin:7px 0 8px;font-size:22px;letter-spacing:-.04em}
.home-rv-site-address{min-height:42px;margin:0;color:#69798d;font-size:13px;line-height:1.6}
.home-rv-site-metrics{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}
.home-rv-site-metric{padding:12px;border-radius:12px;background:#f6f8fb}
.home-rv-site-metric span{display:block;color:#8796a8;font-size:10px;font-weight:700}
.home-rv-site-metric strong{display:block;margin-top:5px;font-size:16px}
.home-rv-site-actions{display:flex;gap:9px}
.home-rv-site-actions a,.home-rv-site-actions button{flex:1;display:inline-flex;align-items:center;justify-content:center;min-height:42px;border-radius:10px;font:inherit;font-size:13px;font-weight:800;cursor:pointer}
.home-rv-site-actions a{background:#f3f7fd;color:#164783;border:1px solid #dfebfa}
.home-rv-site-actions button{background:#fff;color:var(--home-rv-blue);border:1px solid #bfd5f7}
.home-rv-site-actions button.is-selected{background:var(--home-rv-blue);color:#fff;border-color:var(--home-rv-blue)}
.home-rv-empty{padding:40px;border:1px dashed #cad6e6;border-radius:18px;background:#f9fbfd;color:#66768a;text-align:center}

.home-rv-product{background:#f6f9fd}
.home-rv-product .home-rv-section-head{align-items:center;gap:88px;margin-bottom:44px}
.home-rv-product .home-rv-section-head>div{flex:1 1 58%;max-width:690px}
.home-rv-product .home-rv-eyebrow{margin-bottom:20px;font-size:11px;letter-spacing:.16em}
.home-rv-product .home-rv-section-head h2{max-width:680px;font-size:clamp(34px,3.15vw,48px);line-height:1.11;letter-spacing:-.042em;font-weight:900}
.home-rv-product .home-rv-section-head p{flex:0 1 430px;max-width:430px;font-size:15px;line-height:1.9;letter-spacing:-.018em}

.home-rv-smart-search{padding:24px;border:1px solid #d9e5f3;border-radius:24px;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%);box-shadow:0 20px 48px rgba(25,48,78,.07)}
.home-rv-smart-search__prompt{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:14px;align-items:center;padding:10px 12px;border:1px solid #c9d7e5;border-radius:18px;background:#fff}
.home-rv-smart-search__prompt>span{display:grid;width:52px;height:52px;place-items:center;border-radius:14px;background:linear-gradient(180deg,#15385f 0%,#0d2037 100%);color:#fff;font-size:18px;box-shadow:0 8px 20px rgba(13,32,55,.14)}
.home-rv-smart-search__prompt input{height:52px;border:0;outline:0;background:transparent;color:#102036;font-size:17px;font-weight:780;letter-spacing:-.02em}
.home-rv-smart-search__prompt input::placeholder{color:#99a8b9}
.home-rv-smart-search__prompt button{font:inherit;cursor:pointer}
.home-rv-smart-search__ai-button{position:relative;display:flex;min-width:144px;height:56px;flex-direction:column;align-items:flex-start;justify-content:center;gap:3px;padding:0 18px;border:0;border-radius:16px;background:linear-gradient(135deg,#1d4ed8 0%,#1769e8 55%,#3b82f6 100%);color:#fff;box-shadow:0 12px 28px rgba(23,105,232,.22),inset 0 1px 0 rgba(255,255,255,.2);overflow:hidden;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}
.home-rv-smart-search__ai-button:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 0%,rgba(255,255,255,.18) 42%,transparent 72%);transform:translateX(-120%);transition:transform .55s ease}
.home-rv-smart-search__ai-button:hover{transform:translateY(-2px);box-shadow:0 16px 32px rgba(23,105,232,.28),inset 0 1px 0 rgba(255,255,255,.24);filter:saturate(1.04)}
.home-rv-smart-search__ai-button:hover:before{transform:translateX(120%)}
.home-rv-smart-search__ai-button:focus-visible{outline:3px solid rgba(59,130,246,.28);outline-offset:3px}
.home-rv-smart-search__ai-kicker{position:relative;z-index:1;color:rgba(255,255,255,.72);font-size:9px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;line-height:1}
.home-rv-smart-search__ai-label{position:relative;z-index:1;display:inline-flex;align-items:center;gap:7px;color:#fff;font-size:15px;font-weight:900;letter-spacing:-.02em;line-height:1}
.home-rv-smart-search__ai-label b{font-size:16px;line-height:1}
.home-rv-smart-search__filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}
.home-rv-smart-search__filters label{display:grid;gap:6px}
.home-rv-smart-search__filters label>span{color:#7c8b9a;font-size:10px;font-weight:850}
.home-rv-smart-search__filters label>div{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;border:1px solid #d8e1e9;border-radius:10px;background:#fff;overflow:hidden}
.home-rv-smart-search__filters input{width:100%;height:40px;padding:0 10px;border:0;outline:0;background:transparent;font-size:11px}
.home-rv-smart-search__filters b{padding-right:10px;color:#8796a4;font-size:10px}
.home-rv-smart-search__examples{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:16px}
.home-rv-smart-search__examples-label{display:inline-flex;align-items:center;min-height:34px;margin-right:2px;color:#47617b;font-size:11px;font-weight:900;white-space:nowrap}
.home-rv-smart-search__examples-label::first-letter{color:#1769e8}
.home-rv-smart-search__examples a{display:inline-flex;min-height:34px;align-items:center;padding:0 12px;border:1px solid #d7e1ea;border-radius:999px;background:#fff;color:#607386;font-size:10px;font-weight:850;text-decoration:none;transition:border-color .16s ease,background .16s ease,color .16s ease,transform .16s ease}
.home-rv-smart-search__examples a:hover{border-color:#a9c8ef;background:#f6f9ff;color:#1769e8;transform:translateY(-1px)}
.home-rv-smart-search__examples a:last-child{margin-left:0;border-color:#d7e1ea;color:#607386}
@media(min-width:1024px){
  .home-rv-smart-search{padding:30px 32px;border-radius:28px}
  .home-rv-smart-search__prompt{grid-template-columns:62px minmax(0,1fr) auto;gap:18px;min-height:88px;padding:12px 14px;border-radius:22px}
  .home-rv-smart-search__prompt>span{width:62px;height:62px;border-radius:18px;font-size:20px}
  .home-rv-smart-search__prompt input{height:62px;font-size:20px}
  .home-rv-smart-search__prompt input::placeholder{font-size:18px}
  .home-rv-smart-search__ai-button{min-width:172px;height:66px;padding:0 22px;border-radius:20px}
  .home-rv-smart-search__ai-kicker{font-size:10px}
  .home-rv-smart-search__ai-label{font-size:18px}
  .home-rv-smart-search__examples{gap:12px;margin-top:20px}
  .home-rv-smart-search__examples-label{min-height:40px;font-size:13px}
  .home-rv-smart-search__examples a{min-height:40px;padding:0 16px;font-size:12px}
}

.home-rv-product-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:26px}
.home-rv-product-card{border:1px solid #dfe8f3;border-radius:24px;background:#fff;padding:30px;box-shadow:0 12px 38px rgba(20,43,75,.05)}
.home-rv-product-card h3{margin:0 0 12px;font-size:32px;line-height:1.1;letter-spacing:-.045em}
.home-rv-product-card>p{margin:0;color:#728197;line-height:1.7}
.home-rv-finder-list{display:grid;gap:10px;margin:28px 0}
.home-rv-finder-row{display:grid;grid-template-columns:92px 1fr;gap:14px;padding:13px 0;border-bottom:1px solid #edf1f6}
.home-rv-finder-row span{color:#8a98aa;font-size:12px}
.home-rv-finder-row strong{font-size:14px}
.home-rv-match{margin-top:22px;padding:18px;border-radius:16px;background:linear-gradient(135deg,#effaf4,#f7fcfa);border:1px solid #d7eee1}
.home-rv-match-head{display:flex;justify-content:space-between;color:#07885b;font-size:14px;font-weight:900}
.home-rv-match strong{display:block;margin-top:12px;font-size:22px;color:#153c31}
.home-rv-match p{margin:8px 0 0;color:#56776c;font-size:13px;line-height:1.55}

.home-rv-compare{background:#fff}
.home-rv-compare[hidden]{display:none}
.home-rv-compare.is-revealed{animation:homeCompareReveal .34s ease both}
@keyframes homeCompareReveal{from{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}
.home-rv-compare-output{overflow:auto;border:1px solid #dce5f0;border-radius:18px;background:#fff}
.home-rv-compare-table{min-width:760px;display:grid;grid-template-columns:180px repeat(3,minmax(190px,1fr))}
.home-rv-compare-cell{padding:15px 16px;border-right:1px solid #edf1f5;border-bottom:1px solid #edf1f5;font-size:13px}
.home-rv-compare-cell.is-label{background:#f8fafc;color:#748397;font-weight:800}
.home-rv-compare-cell.is-head{padding-top:20px;padding-bottom:20px;font-weight:900;font-size:15px}
.home-rv-compare-cell a{color:var(--home-rv-blue);font-weight:800}
.home-rv-compare-empty{display:flex;min-height:180px;align-items:center;justify-content:center;flex-direction:column;gap:8px;padding:42px 24px;color:#728197;text-align:center}.home-rv-compare-empty strong{color:#132238;font-size:18px;font-weight:900;letter-spacing:-.03em}.home-rv-compare-empty span{max-width:520px;color:#7d8b9d;font-size:13px;line-height:1.65}

.home-rv-explorer{background:#f7f9fc}
.home-rv-explorer-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:28px;align-items:center}
.home-rv-explorer-copy h2{margin:0;font-size:clamp(38px,4.6vw,64px);line-height:1.02;letter-spacing:-.055em}
.home-rv-explorer-copy p{max-width:450px;margin:22px 0 28px;color:#68788d;line-height:1.8}
.home-rv-floor-demo{display:grid;grid-template-columns:1.15fr .85fr;min-height:430px;border:1px solid #dce4ee;border-radius:24px;background:#fff;overflow:hidden;box-shadow:var(--home-rv-shadow)}
.home-rv-plan{position:relative;padding:36px;background:linear-gradient(180deg,#fbfcfe,#f3f6fa);border-right:1px solid #e4eaf1}
.home-rv-plan-grid{height:100%;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);gap:7px;padding:22px;border:2px solid #7f8c9d;background:#fff}
.home-rv-plan-unit{display:grid;place-items:center;border:1px solid #aab5c2;color:#69788a;font-size:11px;font-weight:800}
.home-rv-plan-unit.is-active{background:#2777ee;color:#fff;border-color:#2777ee}
.home-rv-plan-caption{position:absolute;left:36px;bottom:18px;color:#8b98a9;font-size:10px;font-weight:800;letter-spacing:.1em}
.home-rv-units{padding:30px}
.home-rv-units-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:18px;border-bottom:1px solid #e7ecf2}
.home-rv-units-head strong{font-size:18px}
.home-rv-units-head span{color:#8190a4;font-size:11px}
.home-rv-unit-demo{padding:18px 0;border-bottom:1px solid #edf1f5}
.home-rv-unit-demo strong{display:block;font-size:15px}
.home-rv-unit-demo span{display:block;margin-top:5px;color:#8492a4;font-size:12px}
.home-rv-unit-tags{display:flex;gap:5px;margin-top:9px}
.home-rv-unit-tags b{padding:4px 6px;border-radius:5px;background:#eaf2ff;color:#0f63e9;font-size:10px}
.home-rv-unit-tags b:nth-child(2){background:#ffeff1;color:#d94255}

.home-rv-map-data{background:#fff}
.home-rv-map-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:24px}
.home-rv-map-shell{position:relative;min-height:440px;border:1px solid #dce5ef;border-radius:22px;overflow:hidden;background:#edf2f7}
.home-rv-map-shell .home-site-map{position:absolute;inset:0;width:100%;height:100%!important}
.home-rv-data-card{padding:30px;border-radius:22px;background:var(--home-rv-navy);color:#fff}
.home-rv-data-card h3{margin:0;font-size:30px;line-height:1.15;letter-spacing:-.04em}
.home-rv-data-card>p{margin:14px 0 26px;color:#aab8cc;line-height:1.7}
.home-rv-data-list{display:grid;gap:13px}
.home-rv-data-item{display:grid;grid-template-columns:34px 1fr;gap:12px;align-items:start;padding:14px 0;border-top:1px solid rgba(255,255,255,.1)}
.home-rv-data-item b{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:rgba(255,255,255,.08);font-size:11px;color:#8eb8ff}
.home-rv-data-item strong{display:block;font-size:14px}
.home-rv-data-item span{display:block;margin-top:4px;color:#9eacc0;font-size:12px;line-height:1.5}

.home-rv-journal{padding:56px 0;border-top:1px solid #e8edf3}
.home-rv-journal-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:54px}
.home-rv-journal h2{margin:0;font-size:34px;letter-spacing:-.045em}
.home-rv-news-list{display:grid}
.home-rv-news{display:grid;grid-template-columns:108px 1fr auto;gap:18px;align-items:center;padding:16px 0;border-bottom:1px solid #e7ecf2;color:var(--home-rv-ink)}
.home-rv-news time{color:#8b99ab;font-size:11px;font-weight:800}
.home-rv-news strong{font-size:14px}
.home-rv-news span{color:var(--home-rv-blue);font-weight:900}

.home-rv-tray{position:fixed;z-index:80;left:50%;bottom:22px;transform:translate(-50%,140%);width:min(760px,calc(100% - 28px));display:flex;align-items:center;gap:16px;padding:12px 14px;border-radius:16px;background:#0a1830;color:#fff;box-shadow:0 20px 60px rgba(3,14,32,.32);transition:transform .25s ease}
.home-rv-tray.is-visible{transform:translate(-50%,0)}
.home-rv-tray-list{display:flex;gap:7px;flex:1;min-width:0;overflow:hidden}
.home-rv-tray-chip{display:inline-flex;align-items:center;gap:7px;max-width:170px;padding:7px 9px;border-radius:8px;background:rgba(255,255,255,.08);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.home-rv-tray-chip button{border:0;background:none;color:#91a6c5;cursor:pointer;font-size:14px}
.home-rv-tray-action{border:0;border-radius:10px;background:var(--home-rv-blue);color:#fff;padding:11px 15px;font:inherit;font-size:12px;font-weight:900;cursor:pointer}
.home-rv-tray-count{font-size:11px;color:#9daec5;white-space:nowrap}

@media(max-width:980px){
.home-rv-shell{width:min(100% - 28px,760px)}
.home-rv-section{padding:70px 0}
.home-rv-hero-grid,.home-rv-product-grid,.home-rv-explorer-grid,.home-rv-map-grid,.home-rv-journal-grid{grid-template-columns:1fr}
.home-rv-hero-grid{gap:28px;min-height:0}
.home-rv-hero:after{background:linear-gradient(180deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.82) 48%,rgba(255,255,255,.58) 100%)}
.home-rv-hero-visual{min-height:390px;justify-content:center}
.home-rv-compare-guide{width:min(560px,100%);padding:28px}
.home-rv-quick{grid-template-columns:1fr}
.home-rv-card-grid{grid-template-columns:1fr 1fr}
.home-rv-floor-demo{grid-template-columns:1fr}.home-rv-plan{border-right:0;border-bottom:1px solid #e4eaf1;min-height:360px}
}
@media(max-width:640px){
.home-rv-shell{width:calc(100% - 24px)}
.home-rv-hero{padding:26px 0 24px}.home-rv-hero:before{background-position:64% center;opacity:.58}.home-rv-hero:after{background:linear-gradient(180deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.88) 46%,rgba(255,255,255,.68) 100%)}.home-rv-hero-copy{padding:20px 0 4px}.home-rv-hero .home-rv-eyebrow{margin-bottom:18px}.home-rv-hero h1{font-size:43px}.home-rv-hero-rotator{min-height:2.2em}.home-rv-hero-lead{font-size:14px;margin-top:16px}.home-rv-hero-visual{min-height:330px}.home-rv-compare-guide{width:100%;padding:22px;border-radius:18px;background:rgba(255,255,255,.88)}.home-rv-compare-guide h2{font-size:32px}.home-rv-compare-guide>p{font-size:13px}.home-rv-compare-guide-points{margin:18px 0}.home-rv-compare-guide-points span{font-size:10px}
.home-rv-quick a{grid-template-columns:42px 1fr auto;min-height:76px;padding:14px}.home-rv-quick-icon{width:42px;height:42px}
.home-rv-section{padding:58px 0}.home-rv-section-head{display:block;margin-bottom:26px}.home-rv-section-head h2{font-size:38px}.home-rv-section-head p{margin-top:15px;font-size:14px}.home-rv-available-head-side{justify-items:start;margin-top:16px}
.home-rv-card-grid{grid-template-columns:1fr}
.home-rv-card-grid:has(> .home-rv-site-card:nth-child(2)){display:flex;gap:12px;overflow-x:auto;overflow-y:hidden;margin-right:-12px;padding:0 24px 10px 0;scroll-snap-type:x mandatory;scroll-padding-left:0;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;scrollbar-width:none}
.home-rv-card-grid:has(> .home-rv-site-card:nth-child(2))::-webkit-scrollbar{display:none}
.home-rv-card-grid:has(> .home-rv-site-card:nth-child(2))>.home-rv-site-card{flex:0 0 100%;scroll-snap-align:start;scroll-snap-stop:always}
.home-rv-card-grid:has(> .home-rv-site-card:nth-child(2))>.home-rv-site-card:last-child{margin-right:4px}
.home-rv-site-media{height:190px}
.home-rv-product-card{padding:22px}.home-rv-product-card h3{font-size:28px}
.home-rv-compare-table{min-width:650px;grid-template-columns:140px repeat(3,minmax(170px,1fr))}
.home-rv-floor-demo{min-height:0}.home-rv-plan{padding:20px;min-height:290px}.home-rv-plan-grid{padding:14px}.home-rv-plan-caption{left:20px}.home-rv-units{padding:20px}
.home-rv-map-shell,.home-rv-map-shell .home-site-map{height:360px!important;min-height:360px}.home-rv-data-card{padding:24px}.home-rv-data-card h3{font-size:26px}
.home-rv-journal{padding:44px 0}.home-rv-journal-grid{gap:24px}.home-rv-news{grid-template-columns:88px 1fr auto}.home-rv-news strong{font-size:13px}
.home-rv-tray{bottom:10px;padding:10px}.home-rv-tray-count{display:none}.home-rv-tray-list{gap:5px}.home-rv-tray-chip{max-width:105px;padding:6px 7px}.home-rv-tray-action{padding:10px 12px}
}

@media(prefers-reduced-motion:reduce){
.home-rv-hero-rotator em{transition:none;filter:none;transform:none}
.home-rv-compare-guide-button{transition:none}
.home-rv-compare.is-revealed{animation:none}
}

@media(max-width:760px){
.home-rv-smart-search{padding:14px}
.home-rv-smart-search__prompt{grid-template-columns:42px minmax(0,1fr)}
.home-rv-smart-search__prompt>span{width:42px;height:42px}
.home-rv-smart-search__prompt button{grid-column:1/-1;width:100%}
.home-rv-smart-search__filters{grid-template-columns:1fr 1fr}
.home-rv-smart-search__examples-label{width:100%;margin-bottom:2px}
}

/* Homepage Unit Explorer intentionally hidden.
   Keep server-rendered Blade intact to avoid regressions in existing homepage structure. */
.home-rv-explorer#unit-compare,
.home-rv-quick a[href="#unit-compare"]{
    display:none !important;
}


/* Homepage shortcut cards removed from visual output.
   Blade markup is intentionally preserved to avoid touching existing page structure. */
.home-rv-quick{display:none!important}


/* Mobile front visual reinforcement */
@media(max-width:640px){
  .home-rv{
    background:#f5f8fc;
  }

  .home-rv-shell{
    width:calc(100% - 28px);
  }

  .home-rv-hero{
    position:relative;
    padding:20px 0 34px;
    background:#fff;
  }
  .home-rv-hero:before{
    background-position:68% center;
    opacity:.46;
  }
  .home-rv-hero:after{
    background:linear-gradient(180deg,rgba(255,255,255,.995) 0%,rgba(255,255,255,.94) 38%,rgba(255,255,255,.78) 72%,rgba(255,255,255,.9) 100%);
  }
  .home-rv-hero-grid{
    gap:20px;
  }
  .home-rv-hero-copy{
    position:relative;
    z-index:2;
    padding:10px 2px 0;
  }
  .home-rv-hero .home-rv-eyebrow{
    margin-bottom:14px;
    font-size:10px;
    letter-spacing:.16em;
  }
  .home-rv-hero h1{
    max-width:330px;
    margin:0;
    font-size:38px;
    line-height:1.02;
    letter-spacing:-.058em;
  }
  .home-rv-hero-rotator{
    min-height:2.15em;
    color:#1769e8;
  }
  .home-rv-hero-lead{
    max-width:320px;
    margin-top:16px;
    color:#5f7185;
    font-size:13px;
    line-height:1.7;
  }

  .home-rv-hero-visual{
    min-height:0;
    justify-content:stretch;
  }
  .home-rv-compare-guide{
    width:100%;
    padding:20px;
    border:1px solid rgba(196,213,232,.9);
    border-radius:22px;
    background:rgba(255,255,255,.94);
    box-shadow:0 18px 38px rgba(31,55,85,.10);
    backdrop-filter:blur(12px);
  }
  .home-rv-compare-guide-kicker{
    font-size:9px;
  }
  .home-rv-compare-guide h2{
    margin-top:10px;
    font-size:29px;
    letter-spacing:-.045em;
  }
  .home-rv-compare-guide>p{
    margin-top:8px;
    font-size:12px;
    line-height:1.6;
  }
  .home-rv-compare-guide-points{
    gap:6px;
    margin:15px 0 16px;
  }
  .home-rv-compare-guide-points span{
    min-height:30px;
    padding:0 9px;
    font-size:9px;
  }
  .home-rv-compare-guide-button{
    min-height:48px;
    border-radius:13px;
    font-size:13px;
    box-shadow:0 10px 22px rgba(23,105,232,.18);
  }

  .home-rv-section{
    padding:52px 0;
  }
  .home-rv-section-head{
    margin-bottom:24px;
  }
  .home-rv-section-head .home-rv-eyebrow{
    margin-bottom:10px;
    font-size:9px;
    letter-spacing:.14em;
  }
  .home-rv-section-head h2{
    font-size:34px;
    line-height:1.03;
    letter-spacing:-.052em;
  }
  .home-rv-section-head p{
    margin-top:12px;
    color:#67798e;
    font-size:13px;
    line-height:1.7;
  }

  .home-rv-available{
    background:linear-gradient(180deg,#fff 0%,#f6f9fd 100%);
  }
  .home-rv-card-grid:has(> .home-rv-site-card:nth-child(2)){
    gap:14px;
    margin-right:-14px;
    padding-right:26px;
    padding-bottom:14px;
  }
  .home-rv-card-grid:has(> .home-rv-site-card:nth-child(2))>.home-rv-site-card{
    flex-basis:84%;
  }
  .home-rv-site-card{
    border-radius:22px;
    box-shadow:0 14px 34px rgba(28,49,77,.085);
  }
  .home-rv-site-media{
    height:174px;
  }
  .home-rv-site-badge{
    top:12px;
    left:12px;
    padding:6px 9px;
    font-size:9px;
  }
  .home-rv-site-body{
    padding:17px;
  }
  .home-rv-site-body h3{
    margin:2px 0 6px;
    font-size:19px;
    line-height:1.22;
  }
  .home-rv-site-address{
    min-height:38px;
    font-size:11px;
    line-height:1.55;
  }
  .home-rv-site-metrics{
    gap:8px;
    margin:14px 0;
  }
  .home-rv-site-metric{
    padding:10px;
    border-radius:11px;
  }
  .home-rv-site-metric span{
    font-size:9px;
  }
  .home-rv-site-metric strong{
    font-size:14px;
  }
  .home-rv-site-actions a,
  .home-rv-site-actions button{
    min-height:40px;
    font-size:11px;
  }

  .home-rv-product{
    padding-top:56px;
    background:#f5f8fc;
  }
  .home-rv-product .home-rv-section-head{
    display:block;
    margin-bottom:26px;
  }
  .home-rv-product .home-rv-section-head>div{
    max-width:none;
  }
  .home-rv-product .home-rv-eyebrow{
    margin-bottom:12px;
  }
  .home-rv-product .home-rv-section-head h2{
    font-size:34px;
    line-height:1.04;
  }
  .home-rv-product .home-rv-section-head p{
    margin-top:14px;
    font-size:13px;
    line-height:1.7;
  }

  .home-rv-smart-search{
    padding:16px;
    border-radius:22px;
    box-shadow:0 16px 38px rgba(27,51,82,.08);
  }
  .home-rv-smart-search__prompt{
    grid-template-columns:46px minmax(0,1fr);
    gap:10px;
    padding:10px;
    border-radius:17px;
  }
  .home-rv-smart-search__prompt>span{
    width:46px;
    height:46px;
    border-radius:14px;
    font-size:17px;
  }
  .home-rv-smart-search__prompt input{
    height:46px;
    font-size:15px;
    font-weight:800;
  }
  .home-rv-smart-search__prompt button{
    grid-column:1/-1;
    width:100%;
  }
  .home-rv-smart-search__ai-button{
    min-width:0;
    height:50px;
    align-items:center;
    padding:0 16px;
    border-radius:14px;
  }
  .home-rv-smart-search__ai-kicker{
    display:none;
  }
  .home-rv-smart-search__ai-label{
    font-size:15px;
  }
  .home-rv-smart-search__examples{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
    margin-top:16px;
  }
  .home-rv-smart-search__examples-label{
    grid-column:1/-1;
    width:100%;
    min-height:28px;
    margin:0 0 2px;
    color:#2f4d68;
    font-size:12px;
  }
  .home-rv-smart-search__examples a{
    min-height:38px;
    justify-content:center;
    padding:0 10px;
    text-align:center;
    font-size:10px;
    line-height:1.3;
  }

  .home-rv-map-data{
    background:#fff;
  }
  .home-rv-map-grid{
    gap:16px;
  }
  .home-rv-map-shell,
  .home-rv-map-shell .home-site-map{
    height:320px!important;
    min-height:320px;
  }
  .home-rv-map-shell{
    border-radius:20px;
    box-shadow:0 12px 28px rgba(27,49,74,.07);
  }
  .home-rv-data-card{
    padding:22px;
    border-radius:20px;
  }
  .home-rv-data-card h3{
    font-size:25px;
  }
  .home-rv-data-card>p{
    margin:11px 0 20px;
    font-size:12px;
    line-height:1.65;
  }

}

@media(max-width:390px){
  .home-rv-hero h1,
  .home-rv-section-head h2,
  .home-rv-product .home-rv-section-head h2{
    font-size:31px;
  }
  .home-rv-card-grid:has(> .home-rv-site-card:nth-child(2))>.home-rv-site-card{
    flex-basis:100%;
  }
  .home-rv-smart-search__examples{
    grid-template-columns:1fr;
  }
  .home-rv-smart-search__examples-label{
    grid-column:1;
  }
}


/* Mobile hero visual: keep the architectural image clearly meaningful */
@media(max-width:640px){
  .home-rv-hero:before{
    background-position:62% center;
    opacity:.82;
    filter:saturate(.92) contrast(1.04);
  }

  .home-rv-hero:after{
    background:
      linear-gradient(
        180deg,
        rgba(255,255,255,.93) 0%,
        rgba(255,255,255,.78) 34%,
        rgba(255,255,255,.48) 64%,
        rgba(255,255,255,.68) 100%
      );
  }

  .home-rv-hero-copy{
    text-shadow:0 1px 0 rgba(255,255,255,.9);
  }

  .home-rv-hero{
    box-shadow:inset 0 -1px 0 rgba(17,48,82,.06);
  }
}


/* Mobile hero spacing refinement */
@media(max-width:640px){
  .home-rv-hero-grid{
    gap:10px;
  }

  .home-rv-hero-copy{
    padding-bottom:0;
  }

  .home-rv-hero-lead{
    margin-bottom:2px;
  }

  .home-rv-hero-visual{
    margin-top:0;
  }
}


/* Mobile homepage AI search placeholder tuning */
@media(max-width:640px){
  .home-rv-smart-search__prompt input{
    min-width:0;
    width:100%;
    height:44px;
    padding:0;
    font-size:14px;
    line-height:1.2;
    letter-spacing:-.025em;
  }

  .home-rv-smart-search__prompt input::placeholder{
    color:#9aa9b9;
    font-size:13px;
    font-weight:750;
    letter-spacing:-.03em;
  }
}

@media(max-width:390px){
  .home-rv-smart-search__prompt input{
    font-size:13px;
  }

  .home-rv-smart-search__prompt input::placeholder{
    font-size:12px;
  }
}


/* Mobile compare CTA: desktop keeps the half-overhang placement,
   mobile uses a safe bottom floating action so it can never be clipped. */
@media(max-width:760px){
  .home-rv-selected-compare-wrap{
    position:fixed!important;
    left:12px!important;
    right:12px!important;
    top:auto!important;
    bottom:calc(12px + env(safe-area-inset-bottom))!important;
    z-index:120!important;
    width:auto!important;
    transform:none!important;
  }

  .home-rv-selected-compare-start{
    min-height:54px!important;
    margin:0!important;
    padding:0 18px!important;
    justify-content:space-between!important;
    border-radius:16px!important;
    box-shadow:0 14px 34px rgba(7,17,31,.24)!important;
  }

  .home-rv-selected-compare-start span,
  .home-rv-selected-compare-start strong{
    font-size:13px!important;
  }
}


/* Mobile compare CTA visual refinement */
@media(max-width:760px){
  .home-rv-selected-compare-wrap{
    left:18px!important;
    right:18px!important;
    bottom:calc(14px + env(safe-area-inset-bottom))!important;
  }

  .home-rv-selected-compare-start{
    min-height:58px!important;
    padding:0 22px!important;
    border:1px solid rgba(62,132,255,.24)!important;
    border-radius:999px!important;
    background:linear-gradient(135deg,#1558c7 0%,#1f6feb 58%,#4b91ff 100%)!important;
    box-shadow:0 14px 34px rgba(31,111,235,.28)!important;
  }

  .home-rv-selected-compare-clear{
    top:-9px;
    right:-7px;
    width:28px;
    height:28px;
    font-size:19px;
  }

  .home-rv-selected-compare-start span,
  .home-rv-selected-compare-start strong,
  .home-rv-selected-compare-start span b{
    color:#fff!important;
    font-size:15px!important;
    font-weight:900!important;
    line-height:1!important;
  }
}


/* Mobile comparison horizontal-scroll affordance */
.home-rv-compare-output{
  position:relative;
}

.home-rv-compare-scroll-hint{
  display:none;
}

@media(max-width:760px){
  .home-rv-compare-scroll-hint{
    position:sticky;
    right:10px;
    bottom:12px;
    z-index:20;
    float:right;
    display:inline-flex;
    align-items:center;
    gap:7px;
    width:max-content;
    min-height:36px;
    margin:-48px 10px 10px 0;
    padding:0 12px;
    border:1px solid rgba(56,126,241,.20);
    border-radius:999px;
    background:rgba(23,105,232,.94);
    color:#fff;
    box-shadow:0 8px 20px rgba(23,105,232,.22);
    pointer-events:none;
    backdrop-filter:blur(8px);
  }

  .home-rv-compare-scroll-hint[hidden]{
    display:none!important;
  }

  .home-rv-compare-scroll-hint span{
    font-size:10px;
    font-weight:900;
    white-space:nowrap;
  }

  .home-rv-compare-scroll-hint b{
    font-size:16px;
    line-height:1;
    animation:homeCompareArrow 1.15s ease-in-out infinite;
  }

  @keyframes homeCompareArrow{
    0%,100%{transform:translateX(0)}
    50%{transform:translateX(4px)}
  }
}


/* Mobile comparison scroll hint: side affordance instead of centered bottom pill */
@media(max-width:760px){
  .home-rv-compare-output{
    position:relative;
  }

  .home-rv-compare-scroll-hint{
    position:sticky!important;
    top:50%!important;
    right:8px!important;
    bottom:auto!important;
    z-index:24!important;

    float:right!important;
    display:flex!important;
    width:44px!important;
    min-width:44px!important;
    height:44px!important;
    min-height:44px!important;

    align-items:center!important;
    justify-content:space-between!important;
    gap:0!important;

    margin:-44px 8px 0 0!important;
    padding:0!important;

    border:1px solid rgba(23,105,232,.18)!important;
    border-radius:999px!important;
    background:rgba(23,105,232,.72)!important;
    color:#fff!important;

    box-shadow:0 8px 20px rgba(23,105,232,.16)!important;
    backdrop-filter:blur(8px)!important;
    -webkit-backdrop-filter:blur(8px)!important;
    pointer-events:none!important;
  }

  .home-rv-compare-scroll-hint span{
    display:none!important;
  }

  .home-rv-compare-scroll-hint b{
    display:block!important;
    font-size:22px!important;
    line-height:1!important;
    font-weight:800!important;
    animation:homeCompareArrow 1.15s ease-in-out infinite!important;
  }

  .home-rv-compare-scroll-hint[hidden]{
    display:none!important;
  }
}


/* Correct mobile compare scroll affordance: center-right of viewport */
@media(max-width:760px){
  .home-rv-compare-scroll-hint{
    position:fixed!important;
    top:50%!important;
    right:14px!important;
    bottom:auto!important;
    left:auto!important;
    z-index:140!important;

    float:none!important;
    width:46px!important;
    min-width:46px!important;
    height:46px!important;
    min-height:46px!important;

    margin:0!important;
    padding:0!important;

    display:flex!important;
    align-items:center!important;
    justify-content:center!important;

    border:1px solid rgba(255,255,255,.55)!important;
    border-radius:999px!important;
    background:rgba(23,105,232,.56)!important;
    color:#fff!important;

    box-shadow:0 8px 22px rgba(23,105,232,.16)!important;
    backdrop-filter:blur(8px)!important;
    -webkit-backdrop-filter:blur(8px)!important;

    transform:translateY(-50%)!important;
    pointer-events:none!important;
  }

  .home-rv-compare-scroll-hint span{
    display:none!important;
  }

  .home-rv-compare-scroll-hint b{
    display:block!important;
    font-size:24px!important;
    line-height:1!important;
    font-weight:700!important;
    text-shadow:0 1px 2px rgba(0,0,0,.08)!important;
  }

  .home-rv-compare-scroll-hint[hidden]{
    display:none!important;
  }
}


/* AI request-style search: one natural-language request surface */
.home-rv-ai-head p{max-width:620px}
.home-rv-smart-search--request{position:relative}
.home-rv-smart-search__input-wrap{
  display:grid;
  min-width:0;
  gap:5px;
}
.home-rv-smart-search__input-wrap label{
  color:#566c82;
  font-size:10px;
  font-weight:900;
  letter-spacing:-.01em;
}
.home-rv-smart-search__input-wrap input{
  width:100%;
  height:48px;
  min-height:48px;
  padding:0;
  border:0;
  outline:0;
  background:transparent;
  color:#102036;
  font:inherit;
  font-size:16px;
  font-weight:780;
  line-height:1.45;
  letter-spacing:-.025em;
  -webkit-appearance:none;
  appearance:none;
}
.home-rv-smart-search__input-wrap input::placeholder{
  color:#9aa9b9;
  opacity:1;
}
.home-rv-smart-search__helper{
  margin:10px 2px 0;
  color:#7b8c9e;
  font-size:10px;
  font-weight:700;
}
.home-rv-smart-search__understands{
  display:flex;
  align-items:center;
  gap:7px;
  flex-wrap:wrap;
  margin-top:15px;
  padding-top:14px;
  border-top:1px solid #e9eef4;
}
.home-rv-smart-search__understands strong{
  margin-right:3px;
  color:#334a62;
  font-size:10px;
  font-weight:900;
}
.home-rv-smart-search__understands span{
  display:inline-flex;
  min-height:28px;
  align-items:center;
  padding:0 9px;
  border-radius:999px;
  background:#f3f7fc;
  color:#60758a;
  font-size:9px;
  font-weight:800;
}


/* Site card decision badges v2 */
.home-rv-site-badges{
  position:absolute;
  top:14px;
  left:14px;
  z-index:2;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:7px;
  max-width:calc(100% - 28px);
  pointer-events:none;
}
.home-rv-site-badges .home-rv-site-badge{
  position:static;
  max-width:100%;
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 10px;
  border-radius:5px;
  background:rgba(255,255,255,.94);
  color:#155b8f;
  box-shadow:0 6px 18px rgba(14,43,68,.10);
  backdrop-filter:blur(8px);
  font-size:10px;
  font-weight:900;
  line-height:1.2;
  white-space:nowrap;
}
.home-rv-site-whole-floor{
  position:absolute;
  right:16px;
  bottom:16px;
  z-index:2;
  display:inline-flex;
  align-items:center;
  gap:7px;
  max-width:calc(100% - 32px);
  padding:0;
  border:0;
  background:transparent;
  color:#fff;
  font-size:12px;
  font-weight:400;
  line-height:1.15;
  letter-spacing:-.015em;
  text-align:right;
  text-shadow:
    0 3px 12px rgba(0,0,0,.92),
    0 2px 5px rgba(0,0,0,.95),
    0 0 2px rgba(0,0,0,1);
  white-space:nowrap;
  pointer-events:none;
}
.home-rv-site-whole-floor-icon{
  width:15px;
  height:15px;
  flex:0 0 15px;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
  filter:drop-shadow(0 2px 3px rgba(0,0,0,.9));
}
.home-rv-site-whole-floor i{
  color:rgba(255,255,255,.76);
  font-style:normal;
  text-shadow:0 2px 5px rgba(0,0,0,.95);
}


/* 2026-09-28 hero tools: one oversized comparison panel becomes three equal, reusable actions. */
.home-rv-hero-grid{grid-template-columns:1fr;gap:18px;min-height:0;align-items:start}
.home-rv-hero-copy{max-width:760px;padding:28px 0 8px}
.home-rv-hero-visual{min-height:0;display:block;width:100%}
.home-rv-hero-tools{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;overflow:hidden;border:1px solid rgba(214,224,236,.96);border-radius:16px;background:rgba(214,224,236,.96);box-shadow:0 18px 46px rgba(35,66,105,.10);backdrop-filter:blur(14px)}
.home-rv-hero-tool{min-width:0;display:flex;flex-direction:column;min-height:194px;padding:22px 24px;background:rgba(255,255,255,.91)}
.home-rv-hero-tool-kicker{color:#176df0;font-size:9px;font-weight:900;letter-spacing:.16em}
.home-rv-hero-tool h2{margin:9px 0 0;color:#0a1730;font-size:24px;line-height:1.12;letter-spacing:-.045em}
.home-rv-hero-tool>p{min-height:42px;margin:8px 0 16px;color:#66768c;font-size:12px;line-height:1.55}
.home-rv-recent-name{display:block;overflow:hidden;margin:8px 0 -3px;color:#24364d;font-size:13px;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}
.home-rv-hero-tool[data-recent-site-card]>p{margin-top:8px}
.home-rv-hero-tool-action{width:100%;min-height:40px;margin-top:auto;display:inline-flex;align-items:center;justify-content:center;padding:0 14px;border:1px solid #d9e4f2;border-radius:8px;background:#f7faff;color:#17324f;font:inherit;font-size:12px;font-weight:900;cursor:pointer;text-decoration:none;transition:background-color .18s ease,border-color .18s ease,color .18s ease}
.home-rv-hero-tool-action:hover{border-color:#176df0;background:#176df0;color:#fff}


/* 2026-09-28 hero tools refinement: separate the three actions into calm independent cards. */
.home-rv-hero-tools{
  gap:18px;
  overflow:visible;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
}
.home-rv-hero-tool{
  min-height:170px;
  padding:20px 22px 18px;
  border:1px solid rgba(216,226,238,.96);
  border-radius:14px;
  background:rgba(255,255,255,.93);
  box-shadow:0 10px 28px rgba(35,66,105,.07);
  backdrop-filter:blur(12px);
}
.home-rv-hero-tool>p{min-height:38px;margin:7px 0 13px}
.home-rv-hero-tool-action{
  width:auto;
  align-self:flex-start;
  min-width:132px;
  min-height:36px;
  padding:0 16px;
}


/* 2026-09-28 recent site thumbnail: use existing card space, never increase card height. */
.home-rv-hero-tool--recent{display:grid;grid-template-columns:minmax(0,1fr) 112px;gap:16px;align-items:stretch}
.home-rv-recent-copy{min-width:0;display:flex;flex-direction:column}
.home-rv-recent-copy>p{min-height:38px;margin:7px 0 13px;color:#66768c;font-size:12px;line-height:1.55}
.home-rv-recent-media{width:112px;height:100%;min-height:0;margin:0;overflow:hidden;border-radius:9px;background:#eef3f8}
.home-rv-recent-media[hidden]{display:none}
.home-rv-recent-media img{display:block;width:100%;height:100%;min-height:126px;max-height:132px;object-fit:cover}


/* 2026-09-28 recent thumbnail: stop image at the top edge of the CTA row. */
.home-rv-hero-tool--recent{align-items:start}
.home-rv-recent-media{
  align-self:start;
  height:104px;
}
.home-rv-recent-media img{
  height:104px;
  min-height:104px;
  max-height:104px;
}


/* 2026-09-28 newcomer hero message rotation: two complete messages share one fixed stage. */
.home-rv-hero-message-rotator{position:relative;display:block;min-height:2.16em}
.home-rv-hero-message{position:absolute;inset:0 auto auto 0;width:100%;display:block;opacity:0;transform:translateY(12px);pointer-events:none;transition:opacity .28s ease,transform .28s ease}
.home-rv-hero-message.is-active{position:relative;opacity:1;transform:translateY(0);pointer-events:auto}
.home-rv-hero-message.is-leaving{position:absolute;opacity:0;transform:translateY(-12px)}
.home-rv-hero-message strong{font:inherit;color:#17629a}


/* 2026-09-28 hero copy width: give desktop messages enough horizontal room for intentional two-line copy. */
@media(min-width:761px){
  .home-rv-hero-copy{
    width:min(100%,980px);
    max-width:980px;
  }
  .home-rv-hero-message-rotator{
    width:980px;
    max-width:calc(100vw - 180px);
  }
  .home-rv-hero-message{width:100%}
}


/* 2026-09-28 desktop hero final override: h1's legacy max-width was still constraining the rotating copy. */
@media(min-width:1025px){
  .home-rv-hero .home-rv-hero-copy{
    width:min(100%,1080px);
    max-width:1080px;
  }
  .home-rv-hero .home-rv-hero-message-rotator{
    width:1080px;
    max-width:calc(100vw - 150px);
  }
  .home-rv-hero .home-rv-hero-message-rotator.home-rv-hero-message-rotator{
    max-width:1080px;
  }
  .home-rv-hero h1.home-rv-hero-message-rotator{
    max-width:1080px;
  }
  .home-rv-hero-message{
    width:100%;
    white-space:nowrap;
  }
  .home-rv-hero-message br{
    display:block;
  }
}

/* === Consolidated mobile homepage rules (formerly home-mobile-core-v02.css) === */
/*
 * OfficeDoor homepage mobile core v02
 * Approved homepage composition and the reference rhythm for future mobile pages.
 */
@media(max-width:760px){
  .home-rv{background:var(--od-bg);color:var(--od-ink)}
  .home-rv-shell{width:calc(100% - (var(--od-page-gutter) * 2))!important;max-width:none}

  .home-rv-hero{
    padding:18px 0 28px!important;
    border-bottom:0!important;
    background-color:#fff!important;
    background-image:none!important;
    background-size:cover!important;
    background-position:center center!important;
    background-repeat:no-repeat!important;
  }
  .home-rv-hero:before,
  .home-rv-hero:after{
    content:none!important;
    display:none!important;
    background:none!important;
    opacity:0!important;
    filter:none!important;
  }
  .home-rv-hero-grid{display:block!important;min-height:0!important}
  .home-rv-hero-copy{padding:4px 0 0!important;text-shadow:none!important}
  .home-rv-hero .home-rv-eyebrow,
  .home-rv-section-head .home-rv-eyebrow,
  .home-rv-product .home-rv-eyebrow{
    margin:0 0 10px!important;
    color:var(--od-brand)!important;
    font-size:10px!important;
    font-weight:900!important;
    letter-spacing:.14em!important;
  }
  .home-rv-hero h1{
    max-width:340px!important;
    font-size:32px!important;
    line-height:1.03!important;
    letter-spacing:-.055em!important;
  }
  .home-rv-hero-rotator{min-height:2.06em!important;margin-top:3px!important}
  .home-rv-hero-lead{
    max-width:335px!important;
    margin:9px 0 0!important;
    color:#52657a!important;
    font-size:12px!important;
    line-height:1.55!important;
  }
  .home-rv-hero-visual{min-height:0!important;margin-top:12px!important}
  .home-rv-compare-guide{
    width:100%!important;
    padding:10px!important;
    border:1px solid rgba(255,255,255,.72)!important;
    border-radius:18px!important;
    background:rgba(255,255,255,.94)!important;
    box-shadow:var(--od-shadow-md)!important;
    backdrop-filter:blur(14px)!important;
  }
  .home-rv-compare-guide:before{opacity:.45}
  .home-rv-compare-guide-kicker{padding:4px 8px!important;font-size:8px!important}
  .home-rv-compare-guide h2{margin:6px 0 0!important;font-size:20px!important}
  .home-rv-compare-guide>p{margin:5px 0 0!important;font-size:10px!important;line-height:1.5!important}
  .home-rv-compare-guide-points{gap:4px!important;margin:8px 0!important}
  .home-rv-compare-guide-points span{
    min-height:23px!important;
    padding:0 7px!important;
    font-size:8px!important;
    background:#f5f8fc!important;
  }
  .home-rv-compare-guide-button{
    min-height:36px!important;
    border-radius:10px!important;
    background:linear-gradient(90deg,var(--od-brand-strong),#2379f1)!important;
    font-size:12px!important;
    box-shadow:0 10px 22px rgba(23,105,232,.18)!important;
  }

  .home-rv-section{padding:42px 0!important}
  .home-rv-section-head{display:block!important;margin-bottom:20px!important}
  .home-rv-section-head h2,
  .home-rv-product .home-rv-section-head h2{
    margin:0!important;
    font-size:29px!important;
    line-height:1.06!important;
    letter-spacing:-.052em!important;
  }
  .home-rv-section-head p{
    max-width:none!important;
    margin:10px 0 0!important;
    color:var(--od-muted)!important;
    font-size:12px!important;
    line-height:1.65!important;
  }

  .home-rv-available{
    padding-bottom:18px!important;
    background:#fff!important;
  }
  .home-rv-available-head-side{display:block!important}
  .home-rv-card-grid{
    display:flex!important;
    align-items:stretch!important;
    gap:10px!important;
    overflow-x:auto!important;
    scroll-snap-type:x mandatory!important;
    scroll-padding-inline:16px!important;
    scrollbar-width:none!important;
    margin:0 calc(var(--od-page-gutter) * -1)!important;
    padding:0 16px 10px!important;
  }
  .home-rv-card-grid::-webkit-scrollbar{display:none}
  .home-rv-site-card{
    flex:0 0 82%!important;
    min-width:0!important;
    display:flex!important;
    flex-direction:column!important;
    align-self:stretch!important;
    scroll-snap-align:start!important;
    overflow:hidden!important;
    border:1px solid #e1e6ea!important;
    border-radius:6px!important;
    background:#fff!important;
    box-shadow:none!important;
  }
  .home-rv-site-media{
    width:100%!important;
    height:152px!important;
    margin:0!important;
    border-radius:0!important;
  }
  .home-rv-site-media img{
    width:100%!important;
    height:100%!important;
    display:block!important;
    object-fit:cover!important;
  }
  .home-rv-site-badge{
    top:10px!important;
    left:10px!important;
    padding:5px 8px!important;
    border-radius:3px!important;
    font-size:10px!important;
  }
  .home-rv-site-body{
    flex:1 1 auto!important;
    display:flex!important;
    flex-direction:column!important;
    padding:12px!important;
  }
  .home-rv-site-body h3{
    min-height:0!important;
    display:block!important;
    margin:0 0 2px!important;
    font-size:19px!important;
    line-height:1.25!important;
  }
  .home-rv-site-address{
    min-height:30px!important;
    margin:0!important;
    font-size:11px!important;
    line-height:1.45!important;
  }
  .home-rv-site-metrics{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:0!important;
    min-height:64px!important;
    margin:auto 0 0!important;
    border-top:1px solid #e1e6ea!important;
    border-bottom:1px solid #e1e6ea!important;
  }
  .home-rv-site-metric{
    min-width:0!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    padding:8px 6px!important;
    border-radius:0!important;
    background:transparent!important;
    text-align:center!important;
  }
  .home-rv-site-metric:first-child{
    padding:8px 6px!important;
  }
  .home-rv-site-metric + .home-rv-site-metric{
    padding:8px 6px!important;
    border-left:1px solid #e1e6ea!important;
  }
  .home-rv-site-metric span{
    width:100%!important;
    display:block!important;
    margin:0 0 3px!important;
    text-align:center!important;
    color:#7a8791!important;
    font-size:11px!important;
    font-weight:800!important;
    line-height:1.2!important;
  }
  .home-rv-site-metric strong{
    width:100%!important;
    min-height:20px!important;
    display:block!important;
    margin:0!important;
    text-align:center!important;
    color:#182733!important;
    font-size:15px!important;
    font-weight:900!important;
    line-height:1.3!important;
    word-break:keep-all!important;
  }
  .home-rv-site-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
    margin-top:10px!important;
  }
  .home-rv-site-actions a,
  .home-rv-site-actions button{
    width:100%!important;
    min-width:0!important;
    min-height:40px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    margin:0!important;
    padding:0 8px!important;
    border-radius:4px!important;
    box-sizing:border-box!important;
    font-size:13px!important;
    font-weight:900!important;
    line-height:1.2!important;
    text-align:center!important;
    white-space:nowrap!important;
  }
  .home-rv-site-actions a{
    border:1px solid #142b3e!important;
    background:#142b3e!important;
    color:#fff!important;
  }
  .home-rv-site-actions button{
    border:1px solid #c8d5dd!important;
    background:#fff!important;
    color:#1f5f93!important;
  }
  .home-rv-site-actions button.is-selected{
    border-color:#1f5f93!important;
    background:#1f5f93!important;
    color:#fff!important;
  }
  .home-rv-card-pagination{
    min-height:22px!important;
    margin-top:4px;
  }

  .home-rv-compare{background:#f5f8fc!important}
  .home-rv-compare-output{
    margin:0 calc(var(--od-page-gutter) * -1)!important;
    border-left:0!important;
    border-right:0!important;
    border-radius:0!important;
    background:#fff!important;
  }
  .home-rv-compare-table{
    min-width:690px!important;
    grid-template-columns:110px repeat(3,minmax(170px,1fr))!important;
  }
  .home-rv-compare-cell{padding:11px 10px!important;font-size:11px!important;line-height:1.5!important}
  .home-rv-compare-cell.is-head{padding-top:14px!important;padding-bottom:14px!important;font-size:12px!important}

  .home-rv-product{
    padding-top:24px!important;
    background:#fff!important;
  }
  .home-rv-product .home-rv-section-head{margin-bottom:18px!important}
  .home-rv-smart-search{
    padding:12px!important;
    border:1px solid var(--od-line)!important;
    border-radius:18px!important;
    background:#fff!important;
    box-shadow:var(--od-shadow-sm)!important;
  }
  .home-rv-smart-search__prompt{
    display:grid!important;
    grid-template-columns:42px minmax(0,1fr)!important;
    gap:8px!important;
    padding:8px!important;
    border-radius:14px!important;
    background:#f7f9fc!important;
  }
  .home-rv-smart-search__prompt>span{width:42px!important;height:40px!important;border-radius:12px!important}
  .home-rv-smart-search__prompt input{height:42px!important;font-size:13px!important}
  .home-rv-smart-search__prompt input::placeholder{font-size:12px!important}
  .home-rv-smart-search__prompt button{grid-column:1/-1!important;width:100%!important}
  .home-rv-smart-search__ai-button{height:44px!important;border-radius:11px!important;font-size:12px!important}
  .home-rv-smart-search__examples{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:7px!important;
    margin-top:12px!important;
  }
  .home-rv-smart-search__examples-label{
    flex:0 0 100%!important;
    min-height:22px!important;
    margin:0!important;
    font-size:10px!important;
  }
  .home-rv-smart-search__examples a{
    width:auto!important;
    min-height:32px!important;
    padding:0 10px!important;
    border-radius:999px!important;
    font-size:9px!important;
  }

  .home-rv-map-data{background:#f5f8fc!important}
  .home-rv-map-grid{display:block!important}
  .home-rv-map-shell,
  .home-rv-map-shell .home-site-map{height:300px!important;min-height:300px!important}
  .home-rv-map-shell{border-radius:16px!important;box-shadow:var(--od-shadow-sm)!important}
  .home-rv-data-card{margin-top:12px!important;padding:16px!important;border-radius:16px!important;background:var(--od-navy)!important}
  .home-rv-data-card h3{font-size:19px!important}
  .home-rv-data-card>p{margin:8px 0 14px!important;font-size:10px!important;line-height:1.55!important}
  .home-rv-data-list{gap:6px!important}
  .home-rv-data-item{padding:9px 0!important}

  .home-rv-journal{padding:38px 0!important;background:#fff!important}
}
@media(max-width:390px){
  .home-rv-hero h1{font-size:31px!important}
  .home-rv-section-head h2,
  .home-rv-product .home-rv-section-head h2{font-size:27px!important}
  .home-rv-site-card{flex-basis:84%!important}
}


/* Homepage AI request composer: mobile search-first */
@media(max-width:760px){
  .home-rv-ai-head{
    margin-bottom:14px!important;
  }

  .home-rv-ai-head h2{
    max-width:330px;
    font-size:27px!important;
    line-height:1.12!important;
  }

  .home-rv-ai-head p{
    display:none!important;
  }

  .home-rv-smart-search--request{
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }

  .home-rv-smart-search--request .home-rv-smart-search__prompt{
    display:grid!important;
    grid-template-columns:38px minmax(0,1fr) 82px!important;
    align-items:center!important;
    gap:7px!important;
    width:100%!important;
    min-height:58px!important;
    padding:7px!important;
    border:2px solid #176df0!important;
    border-radius:18px!important;
    background:#fff!important;
    box-shadow:0 7px 18px rgba(23,109,240,.08)!important;
    overflow:hidden!important;
  }

  .home-rv-smart-search--request .home-rv-smart-search__prompt>span{
    width:38px!important;
    height:38px!important;
    border-radius:11px!important;
    box-shadow:none!important;
  }

  .home-rv-smart-search__input-wrap{
    display:block!important;
    min-width:0!important;
    width:100%!important;
    padding:0!important;
  }

  .home-rv-smart-search__input-wrap label{
    display:none!important;
  }

  .home-rv-smart-search__input-wrap input{
    box-sizing:border-box!important;
    display:block!important;
    width:100%!important;
    height:42px!important;
    min-width:0!important;
    min-height:40px!important;
    padding:0 2px!important;
    border:0!important;
    outline:0!important;
    overflow:hidden!important;
    background:transparent!important;
    color:#102036!important;
    font-size:13px!important;
    font-weight:750!important;
    line-height:42px!important;
    white-space:nowrap!important;
    text-overflow:ellipsis!important;
  }

  .home-rv-smart-search__input-wrap input::-webkit-search-cancel-button{
    display:none!important;
  }

  .home-rv-smart-search__input-wrap input::placeholder{
    color:#95a4b5!important;
    opacity:1!important;
    font-size:12px!important;
    font-weight:700!important;
  }

  .home-rv-smart-search--request .home-rv-smart-search__ai-button{
    grid-column:auto!important;
    width:82px!important;
    min-width:82px!important;
    height:42px!important;
    margin:0!important;
    padding:0!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:12px!important;
    box-shadow:none!important;
  }

  .home-rv-smart-search--request .home-rv-smart-search__ai-kicker{
    display:none!important;
  }

  .home-rv-smart-search--request .home-rv-smart-search__ai-label{
    gap:4px!important;
    font-size:12px!important;
    white-space:nowrap!important;
  }

  .home-rv-smart-search__helper,
  .home-rv-smart-search__understands,
  .home-rv-smart-search--request .home-rv-smart-search__examples{
    display:none!important;
  }
}


/* Mobile site-card decision badges v2 */
@media(max-width:760px){
  .home-rv-site-badges{
    top:10px!important;
    left:10px!important;
    gap:5px!important;
    max-width:calc(100% - 20px)!important;
  }

  .home-rv-site-badges .home-rv-site-badge{
    min-height:27px!important;
    padding:0 8px!important;
    border-radius:4px!important;
    font-size:9px!important;
    line-height:1.15!important;
  }

  .home-rv-site-whole-floor{
    right:11px!important;
    bottom:11px!important;
    gap:5px!important;
    max-width:calc(100% - 22px)!important;
    font-size:10px!important;
    font-weight:400!important;
    line-height:1.1!important;
    text-shadow:
      0 3px 10px rgba(0,0,0,.92),
      0 2px 4px rgba(0,0,0,.96),
      0 0 2px rgba(0,0,0,1)!important;
  }
  .home-rv-site-whole-floor-icon{
    width:13px!important;
    height:13px!important;
    flex-basis:13px!important;
  }
}


/* 2026-09-28 mobile hero tools */
@media(max-width:760px){
  .home-rv-hero-grid{display:block!important;min-height:0!important}
  .home-rv-hero-visual{display:block!important;min-height:0!important;margin-top:12px!important}
  .home-rv-hero-tools{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:1px!important;
    overflow:hidden!important;
    border:1px solid #dfe7f0!important;
    border-radius:8px!important;
    background:#dfe7f0!important;
    box-shadow:0 10px 24px rgba(35,66,105,.08)!important;
  }
  .home-rv-hero-tool{
    min-height:0!important;
    padding:11px 13px!important;
    background:rgba(255,255,255,.95)!important;
  }
  .home-rv-hero-tool-kicker{font-size:8px!important}
  .home-rv-hero-tool h2{margin:4px 0 0!important;font-size:17px!important}
  .home-rv-hero-tool>p{min-height:0!important;margin:4px 0 8px!important;font-size:10px!important;line-height:1.45!important}
  .home-rv-recent-name{margin:5px 0 0!important;font-size:11px!important}
  .home-rv-hero-tool-action{min-height:32px!important;border-radius:4px!important;font-size:11px!important}
}


/* 2026-09-28 mobile hero tool spacing refinement */
@media(max-width:760px){
  .home-rv-hero-tools{
    gap:8px!important;
    overflow:visible!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .home-rv-hero-tool{
    padding:12px 14px!important;
    border:1px solid #dfe7f0!important;
    border-radius:6px!important;
    box-shadow:0 6px 18px rgba(35,66,105,.055)!important;
  }
  .home-rv-hero-tool-action{
    width:auto!important;
    min-width:118px!important;
    align-self:flex-start!important;
    padding:0 12px!important;
  }
}


@media(max-width:760px){
  .home-rv-hero-tool--recent{grid-template-columns:minmax(0,1fr) 86px!important;gap:10px!important}
  .home-rv-recent-copy{min-width:0!important}
  .home-rv-recent-copy>p{min-height:0!important;margin:4px 0 8px!important;font-size:10px!important;line-height:1.45!important}
  .home-rv-recent-media{width:86px!important;height:100%!important;border-radius:4px!important}
  .home-rv-recent-media img{min-height:96px!important;max-height:104px!important}
}


/* 2026-09-28 recent thumbnail mobile: image ends above the CTA row, matching desktop. */
@media(max-width:760px){
  .home-rv-hero-tool--recent{align-items:start!important}
  .home-rv-recent-media{
    align-self:start!important;
    height:76px!important;
  }
  .home-rv-recent-media img{
    height:76px!important;
    min-height:76px!important;
    max-height:76px!important;
    object-fit:cover!important;
  }
}


/* 2026-09-28 mobile hero copy: keep rotating full sentences readable without accidental third lines. */
@media(max-width:760px){
  .home-rv-hero-message-rotator{
    min-height:2.25em!important;
    width:100%!important;
  }
  .home-rv-hero-message{
    width:100%!important;
    font-size:.82em!important;
    line-height:1.08!important;
    letter-spacing:-.055em!important;
  }
}
@media(max-width:390px){
  .home-rv-hero-message{font-size:.76em!important}
}

/* === Consolidated available-space rules (formerly home-available-v01.css) === */
/* OfficeDoor home / available spaces v0.1
 * Scope: #available only. Uses existing verified Core data and markup.
 */
.home-rv-available{position:relative;padding:88px 0 96px;background:#fff}
.home-rv-available .home-rv-section-head{align-items:flex-end;margin-bottom:34px}
.home-rv-available .home-rv-section-head h2{max-width:620px}
.home-rv-available .home-rv-section-head p{max-width:500px}
.home-rv-available .home-rv-card-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:22px}
.home-rv-available .home-rv-site-card{border-radius:22px;border-color:#dce5f0;box-shadow:0 14px 38px rgba(16,36,66,.07)}
.home-rv-available .home-rv-site-media{height:230px}
.home-rv-available .home-rv-site-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(6,21,42,.18));pointer-events:none}
.home-rv-available .home-rv-site-badge{z-index:2}
.home-rv-available .home-rv-site-body{padding:22px}
.home-rv-available .home-rv-site-body h3{font-size:24px}
.home-rv-available .home-rv-site-actions a,.home-rv-available .home-rv-site-actions button{min-height:44px}

/* One genuinely available site should look intentional, not like a missing grid. */
.home-rv-available .home-rv-site-card:only-child{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(340px,.88fr);max-width:920px;min-height:330px}
.home-rv-available .home-rv-site-card:only-child .home-rv-site-media{height:100%;min-height:330px}
.home-rv-available .home-rv-site-card:only-child .home-rv-site-body{display:flex;flex-direction:column;justify-content:center;padding:32px}
.home-rv-available .home-rv-site-card:only-child .home-rv-site-body h3{font-size:30px}
.home-rv-available .home-rv-site-card:only-child .home-rv-site-address{min-height:0}
.home-rv-available .home-rv-site-card:only-child .home-rv-site-actions{margin-top:auto}

@media (max-width:760px){
.home-rv-available{padding:54px 0 62px}
.home-rv-available .home-rv-section-head{display:block;margin-bottom:22px}
.home-rv-available .home-rv-section-head .home-rv-eyebrow{margin-bottom:10px;font-size:10px}
.home-rv-available .home-rv-section-head h2{font-size:32px;line-height:1.04}
.home-rv-available .home-rv-section-head p{margin-top:12px;font-size:13px;line-height:1.6}
.home-rv-available .home-rv-card-grid{grid-template-columns:1fr;gap:14px}
.home-rv-available .home-rv-site-card,.home-rv-available .home-rv-site-card:only-child{display:block;max-width:none;min-height:0;border-radius:18px}
.home-rv-available .home-rv-site-media,.home-rv-available .home-rv-site-card:only-child .home-rv-site-media{height:205px;min-height:0}
.home-rv-available .home-rv-site-body,.home-rv-available .home-rv-site-card:only-child .home-rv-site-body{display:block;padding:18px}
.home-rv-available .home-rv-site-body h3,.home-rv-available .home-rv-site-card:only-child .home-rv-site-body h3{margin:6px 0;font-size:21px}
.home-rv-available .home-rv-site-address{min-height:0;font-size:12px}
.home-rv-available .home-rv-site-metrics{margin:14px 0;gap:8px}
.home-rv-available .home-rv-site-metric{padding:10px}
.home-rv-available .home-rv-site-metric strong{font-size:14px}
.home-rv-available .home-rv-site-actions{margin-top:0}
.home-rv-available .home-rv-site-actions a,.home-rv-available .home-rv-site-actions button{min-height:40px;font-size:12px}
}

/* === Consolidated lower homepage rules (formerly home-lower-renewal-v01.css) === */
/* OfficeDoor homepage lower-section renewal v1
 * Purpose: keep the map focused, give Journal a deliberate editorial role,
 * and end the page with a compact conversion CTA.
 */

.od-structured-page .home-rv-map-grid--single{
  display:block;
}

.od-structured-page .home-rv-map-grid--single .home-rv-map-shell{
  width:100%;
  max-width:none;
}

.od-structured-page .home-rv-journal{
  padding:88px 0 72px;
  background:#fff;
}

.od-structured-page .home-rv-journal-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:32px;
  align-items:end;
  margin-bottom:28px;
}

.od-structured-page .home-rv-journal-copy h2{
  margin:10px 0 0;
  color:#101f2d;
  font-size:clamp(34px,4vw,52px);
  line-height:1.05;
  letter-spacing:-.05em;
}

.od-structured-page .home-rv-journal-copy p{
  max-width:560px;
  margin:16px 0 0;
  color:#71808d;
  font-size:14px;
  line-height:1.7;
}

.od-structured-page .home-rv-journal-more{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:42px;
  padding-bottom:4px;
  border-bottom:1px solid #7c8d9b;
  color:#173a59;
  font-size:13px;
  font-weight:850;
  text-decoration:none;
  white-space:nowrap;
}

.od-structured-page .home-rv-journal-feature{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);
  min-height:360px;
  overflow:hidden;
  border:1px solid #dce3e8;
  border-radius:8px;
  background:#fff;
  color:inherit;
  text-decoration:none;
}

.od-structured-page .home-rv-journal-feature-media{
  min-height:360px;
  background:#eef3f7;
  overflow:hidden;
}

.od-structured-page .home-rv-journal-feature-media img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}

.od-structured-page .home-rv-journal-feature-placeholder{
  width:100%;
  height:100%;
  min-height:360px;
  display:grid;
  place-items:center;
  background:
    linear-gradient(135deg,rgba(10,44,73,.92),rgba(31,95,147,.65)),
    url('/uploads/main/hero-office-main.png') center/cover no-repeat;
}

.od-structured-page .home-rv-journal-feature-placeholder span{
  color:rgba(255,255,255,.9);
  font-size:12px;
  font-weight:900;
  letter-spacing:.18em;
}

.od-structured-page .home-rv-journal-feature-body{
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:34px 36px;
}

.od-structured-page .home-rv-journal-feature-meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:18px;
  color:#7f8d99;
  font-size:11px;
}

.od-structured-page .home-rv-journal-feature-meta span{
  min-height:28px;
  display:inline-flex;
  align-items:center;
  padding:0 10px;
  border-radius:999px;
  background:#edf5fb;
  color:#236493;
  font-weight:850;
}

.od-structured-page .home-rv-journal-feature-body h3{
  margin:0;
  color:#142534;
  font-size:clamp(25px,2.6vw,38px);
  line-height:1.22;
  letter-spacing:-.035em;
}

.od-structured-page .home-rv-journal-feature-body p{
  margin:16px 0 0;
  color:#6e7f8c;
  font-size:13px;
  line-height:1.7;
}

.od-structured-page .home-rv-journal-feature-body>b{
  position:absolute;
  right:32px;
  bottom:30px;
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#f0f4f7;
  color:#173a59;
  font-size:18px;
}

.od-structured-page .home-rv-journal-empty{
  min-height:260px;
  display:grid;
  place-items:center;
  align-content:center;
  gap:9px;
  padding:34px;
  border:1px solid #dce3e8;
  border-radius:8px;
  background:linear-gradient(180deg,#fbfdff,#f6f9fc);
  text-align:center;
}

.od-structured-page .home-rv-journal-empty svg{
  width:62px;
  height:62px;
  margin-bottom:6px;
  fill:none;
  stroke:#91acd0;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.od-structured-page .home-rv-journal-empty strong{
  color:#142534;
  font-size:20px;
  font-weight:900;
}

.od-structured-page .home-rv-journal-empty span{
  color:#82909b;
  font-size:12px;
}

@media(max-width:760px){
  .od-structured-page .home-rv-map-data{
    padding-bottom:34px!important;
  }

  .od-structured-page .home-rv-map-grid--single{
    display:block!important;
  }

  .od-structured-page .home-rv-journal{
    padding:46px 0 42px!important;
  }

  .od-structured-page .home-rv-journal-head{
    display:block;
    margin-bottom:20px;
  }

  .od-structured-page .home-rv-journal-copy h2{
    margin-top:8px;
    font-size:30px;
    line-height:1.08;
  }

  .od-structured-page .home-rv-journal-copy p{
    margin-top:11px;
    font-size:12px;
    line-height:1.65;
  }

  .od-structured-page .home-rv-journal-more{
    min-height:34px;
    margin-top:13px;
    font-size:11px;
  }

  .od-structured-page .home-rv-journal-feature{
    display:block;
    min-height:0;
    border-radius:6px;
  }

  .od-structured-page .home-rv-journal-feature-media{
    min-height:0;
    aspect-ratio:16/9;
  }

  .od-structured-page .home-rv-journal-feature-placeholder{
    min-height:0;
  }

  .od-structured-page .home-rv-journal-feature-body{
    padding:18px 18px 58px;
  }

  .od-structured-page .home-rv-journal-feature-meta{
    margin-bottom:13px;
    font-size:9px;
  }

  .od-structured-page .home-rv-journal-feature-meta span{
    min-height:24px;
    padding:0 8px;
  }

  .od-structured-page .home-rv-journal-feature-body h3{
    font-size:20px;
  }

  .od-structured-page .home-rv-journal-feature-body p{
    margin-top:10px;
    font-size:11px;
    line-height:1.6;
  }

  .od-structured-page .home-rv-journal-feature-body>b{
    right:16px;
    bottom:14px;
    width:34px;
    height:34px;
    font-size:15px;
  }

  .od-structured-page .home-rv-journal-empty{
    min-height:190px;
    gap:7px;
    padding:24px 18px;
    border-radius:6px;
  }

  .od-structured-page .home-rv-journal-empty svg{
    width:50px;
    height:50px;
  }

  .od-structured-page .home-rv-journal-empty strong{
    font-size:16px;
  }

  .od-structured-page .home-rv-journal-empty span{
    font-size:10px;
  }
}

/* === Consolidated final hero authority (formerly home-hero-final-v01.css) === */
/*
 * OfficeDoor homepage hero final authority.
 * Loaded last on the home route so legacy hero rules cannot remove the artwork.
 */
.home-rv.od-structured-page .home-rv-hero{
  padding:150px 0!important;
  background-color:transparent!important;
  background-image:none!important;
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
}

@media(min-width:761px){
  .home-rv.od-structured-page .home-rv-hero{
    box-sizing:border-box!important;
    width:100%!important;
    height:clamp(520px,70svh,690px)!important;
    min-height:520px!important;
    padding:0!important;
    display:flex!important;
    align-items:center!important;
  }

  .home-rv.od-structured-page .home-rv-hero>.home-rv-shell{
    width:min(1280px,calc(100% - 48px))!important;
    height:100%!important;
    display:flex!important;
    align-items:center!important;
  }

  .home-rv.od-structured-page .home-rv-hero-grid{
    width:100%!important;
    min-height:0!important;
    display:block!important;
  }

  .home-rv.od-structured-page .home-rv-hero-copy{
    min-height:0!important;
    padding:0!important;
  }

  .home-rv.od-structured-page .home-rv-hero-visual{
    min-height:0!important;
    margin-top:12px!important;
  }
}

.home-rv.od-structured-page .home-rv-hero::before,
.home-rv.od-structured-page .home-rv-hero::after{
  content:none!important;
  display:none!important;
  background:none!important;
  background-image:none!important;
  opacity:0!important;
  filter:none!important;
}

@media(max-width:760px){
  .home-rv.od-structured-page .home-rv-hero{
    box-sizing:border-box!important;
    width:100%!important;
    height:clamp(390px,68svh,490px)!important;
    min-height:390px!important;
    padding:18px 0 calc(22px + env(safe-area-inset-bottom))!important;
    display:flex!important;
    align-items:flex-start!important;
    background-color:transparent!important;
    background-image:none!important;
    background-size:cover!important;
    background-position:center center!important;
    background-repeat:no-repeat!important;
  }

  .home-rv.od-structured-page .home-rv-hero>.home-rv-shell{
    width:calc(100% - 28px)!important;
    min-height:0!important;
    display:block!important;
  }

  .home-rv.od-structured-page .home-rv-hero-grid{
    width:100%!important;
    min-height:0!important;
  }

  /* Neutralize the old 372px mobile copy reserve from home-hero-intro. */
  .home-rv.od-structured-page .home-rv-hero-copy{
    width:100%!important;
    min-height:0!important;
    height:auto!important;
    padding:4px 0 0!important;
    justify-content:flex-start!important;
  }

  /* Keep the comparison card directly after the intro copy. */
  .home-rv.od-structured-page .home-rv-hero-visual{
    min-height:0!important;
    height:auto!important;
    margin-top:6px!important;
    padding-top:0!important;
    justify-content:stretch!important;
  }
}


/* Mobile hero comparison card: crisp dark overlay without glass blur. */
@media(max-width:760px){
  .home-rv.od-structured-page .home-rv-compare-guide{
    border:1px solid rgba(255,255,255,.12)!important;
    background:
      linear-gradient(145deg,rgba(5,18,34,.64),rgba(8,34,57,.60))!important;
    box-shadow:0 16px 34px rgba(2,12,24,.24)!important;
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
  }

  .home-rv.od-structured-page .home-rv-compare-guide::before{
    display:none!important;
    content:none!important;
  }

  .home-rv.od-structured-page .home-rv-compare-guide-kicker{
    padding:0!important;
    border-radius:0!important;
    background:transparent!important;
    color:rgba(216,231,245,.74)!important;
  }

  .home-rv.od-structured-page .home-rv-compare-guide h2{
    color:#fff!important;
    text-shadow:0 1px 2px rgba(0,0,0,.16)!important;
  }

  .home-rv.od-structured-page .home-rv-compare-guide>p{
    color:rgba(244,248,252,.84)!important;
  }

  .home-rv.od-structured-page .home-rv-compare-guide-points span{
    border-color:rgba(255,255,255,.12)!important;
    background:rgba(255,255,255,.035)!important;
    color:rgba(255,255,255,.94)!important;
  }

  .home-rv.od-structured-page .home-rv-compare-guide-points span::before{
    color:#78bdff!important;
  }

  .home-rv.od-structured-page .home-rv-compare-guide-button{
    border:1px solid rgba(255,255,255,.14)!important;
    background:linear-gradient(90deg,#1769e8,#2c83f6)!important;
    color:#fff!important;
    box-shadow:0 8px 20px rgba(0,59,150,.26)!important;
  }
}

/* === Consolidated desktop compare controls (formerly home-compare-pc-v01.css) === */
/*
 * OfficeDoor desktop comparison controls.
 * Loaded last on the home route so the selected state and floating CTA are stable.
 */
@media(min-width:761px){
  .home-rv-site-actions button[data-home-compare-add]{
    transition:
      background-color .18s ease,
      border-color .18s ease,
      color .18s ease,
      box-shadow .18s ease,
      transform .18s ease;
  }

  .home-rv-site-actions button[data-home-compare-add]:hover{
    border-color:#2f80ed;
    background:#eef6ff;
    color:#1567c9;
  }

  .home-rv-site-actions button[data-home-compare-add].is-selected{
    border-color:#1677ff!important;
    background:linear-gradient(135deg,#1677ff 0%,#0f63e9 100%)!important;
    color:#fff!important;
    box-shadow:0 8px 20px rgba(22,119,255,.26)!important;
    transform:translateY(-1px);
  }

  .home-rv-site-actions button[data-home-compare-add].is-selected::before{
    content:"✓";
    display:inline-block;
    margin-right:6px;
    font-size:12px;
    font-weight:900;
  }

  .home-rv-selected-compare-wrap{
    position:fixed!important;
    left:50%!important;
    right:auto!important;
    bottom:28px!important;
    top:auto!important;
    z-index:1200!important;
    width:min(620px,calc(100vw - 64px))!important;
    transform:translateX(-50%)!important;
  }

  .home-rv-selected-compare-start{
    width:100%!important;
    min-height:72px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:20px!important;
    margin:0!important;
    padding:0 28px!important;
    border:1px solid rgba(255,255,255,.18)!important;
    border-radius:14px!important;
    background:linear-gradient(135deg,#0f2d47 0%,#0d5fc6 100%)!important;
    color:#fff!important;
    box-shadow:0 18px 46px rgba(10,34,58,.30)!important;
    cursor:pointer!important;
    backdrop-filter:none!important;
  }

  .home-rv-selected-compare-start:hover{
    background:linear-gradient(135deg,#102f4b 0%,#1677ff 100%)!important;
    box-shadow:0 22px 54px rgba(15,95,198,.34)!important;
  }

  .home-rv-selected-compare-start.is-disabled,
  .home-rv-selected-compare-start.is-disabled:hover{
    background:linear-gradient(135deg,#17344d 0%,#235a8f 100%)!important;
    box-shadow:0 16px 38px rgba(10,34,58,.22)!important;
    cursor:default!important;
  }

  .home-rv-selected-compare-start.is-disabled strong{
    color:rgba(255,255,255,.82)!important;
    font-size:16px!important;
  }

  .home-rv-selected-compare-start span{
    display:inline-flex!important;
    align-items:center!important;
    gap:5px!important;
    color:rgba(255,255,255,.86)!important;
    font-size:15px!important;
    font-weight:800!important;
  }

  .home-rv-selected-compare-start span b{
    color:#fff!important;
    font-size:18px!important;
    font-weight:950!important;
  }

  .home-rv-selected-compare-start strong{
    color:#fff!important;
    font-size:18px!important;
    font-weight:950!important;
    letter-spacing:-.025em!important;
  }
}


/* === Mobile available-site pagination === */
.home-rv-card-pagination{
  display:none;
}

@media(max-width:760px){
  .home-rv-card-pagination{
    display:flex!important;
    align-items:center;
    justify-content:center;
    gap:8px;
    min-height:24px!important;
    margin:12px 0 0!important;
  }

  .home-rv-card-pagination[hidden]{
    display:none!important;
  }

  .home-rv-card-pagination button{
    width:7px;
    height:7px;
    flex:0 0 7px;
    padding:0;
    border:0;
    border-radius:999px;
    background:#c8d3df;
    box-shadow:none;
    appearance:none;
    -webkit-appearance:none;
    cursor:pointer;
    transition:width .18s ease,background-color .18s ease,transform .18s ease;
  }

  .home-rv-card-pagination button.is-active{
    width:20px;
    flex-basis:20px;
    background:#1f5f93;
  }

  .home-rv-card-pagination button:focus-visible{
    outline:2px solid rgba(31,95,147,.28);
    outline-offset:3px;
  }
}



/* === Shared PC/mobile journal: one category at a time ===
   Reuse the existing Blade categories and tabs; no duplicate markup or queries. */
.od-structured-page .home-rv-journal-head--compact{
  align-items:end;
  margin-bottom:28px;
}
.od-structured-page .home-rv-journal-head--compact .home-rv-journal-copy h2{
  font-size:clamp(31px,3vw,42px);
  line-height:1.12;
}
.od-structured-page .home-rv-journal-head--compact .home-rv-journal-copy p{
  font-size:15px;
  line-height:1.75;
}

/* Segmented navigation appears on every viewport, not only mobile. */
.home-rv-journal-tabs{
  display:inline-flex;
  align-items:center;
  gap:4px;
  box-sizing:border-box;
  max-width:100%;
  min-height:54px;
  margin:0 0 20px;
  padding:5px;
  border:1px solid #dce6f0;
  border-radius:13px;
  background:#f0f5fa;
  overflow-x:auto;
  scrollbar-width:none;
}
.home-rv-journal-tabs::-webkit-scrollbar{display:none}
.home-rv-journal-tabs button{
  flex:0 0 auto;
  min-width:118px;
  min-height:42px;
  padding:0 18px;
  border:0;
  border-radius:9px;
  background:transparent;
  color:#526b83;
  font:inherit;
  font-size:14px;
  font-weight:800;
  letter-spacing:-.02em;
  white-space:nowrap;
  cursor:pointer;
  transition:background-color .18s ease,color .18s ease,box-shadow .18s ease;
}
.home-rv-journal-tabs button:hover{
  background:#e2edf7;
  color:#164c79;
}
.home-rv-journal-tabs button.is-active,
.home-rv-journal-tabs button.is-active:hover{
  background:#153d66;
  color:#fff;
  box-shadow:0 4px 12px rgba(21,61,102,.17);
}
.home-rv-journal-tabs button:focus-visible{
  outline:2px solid #176bc1;
  outline-offset:2px;
}

/* The active panel fills the whole width; one post never leaves empty columns. */
.od-structured-page .home-rv-journal-board{
  display:block;
  overflow:hidden;
  border:1px solid #dce6f0;
  border-radius:16px;
  background:#fff;
  box-shadow:0 12px 32px rgba(24,62,96,.04);
}
.od-structured-page .home-rv-journal-column{
  display:none;
  min-width:0;
  padding:24px 28px 28px;
  border:0;
}
.od-structured-page .home-rv-journal-column.is-active:not([hidden]){
  display:flex;
  flex-direction:column;
}
.od-structured-page .home-rv-journal-column[hidden]{
  display:none!important;
}
.od-structured-page .home-rv-journal-column+.home-rv-journal-column{
  border:0;
}
.od-structured-page .home-rv-journal-column-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:0 0 16px;
  border:0;
  border-bottom:1px solid #e5edf4;
}
.od-structured-page .home-rv-journal-column-head>div{
  display:flex;
  align-items:baseline;
  gap:10px;
  min-width:0;
}
.od-structured-page .home-rv-journal-column-head span{
  color:#7b91a6;
  font-size:11px;
  font-weight:850;
}
.od-structured-page .home-rv-journal-column-head h3{
  margin:0;
  color:#18324c;
  font-size:18px;
  font-weight:850;
  letter-spacing:-.025em;
}
.od-structured-page .home-rv-journal-column-head>a{
  display:inline-flex;
  align-items:center;
  gap:10px;
  flex:0 0 auto;
  min-height:34px;
  color:#21649a;
  font-size:13px;
  font-weight:800;
  text-decoration:none;
}
.od-structured-page .home-rv-journal-column-head>a:hover{
  color:#0f4e85;
}
.od-structured-page .home-rv-journal-column-head>a i{
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  border:1px solid #cfdeec;
  border-radius:50%;
  background:#f6faff;
  font-size:14px;
  font-style:normal;
}
.od-structured-page .home-rv-journal-list{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:10px;
  margin-top:18px;
}
.od-structured-page .home-rv-journal-item{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:20px;
  min-height:106px;
  padding:18px 20px;
  border:1px solid #e3ebf3;
  border-radius:12px;
  background:#f8fafc;
  color:inherit;
  transition:background-color .18s ease,border-color .18s ease,transform .18s ease;
}
.od-structured-page .home-rv-journal-item:last-child{
  border-bottom:1px solid #e3ebf3;
}
.od-structured-page .home-rv-journal-item:hover,
.od-structured-page .home-rv-journal-item:focus-visible{
  border-color:#b5d4ea;
  background:#fff;
  transform:translateY(-1px);
}
.od-structured-page .home-rv-journal-item:focus-visible{
  outline:2px solid #176bc1;
  outline-offset:2px;
}
.od-structured-page .home-rv-journal-item-copy{min-width:0}
.od-structured-page .home-rv-journal-item time{
  display:block;
  margin-bottom:8px;
  color:#72879b;
  font-size:12px;
  font-weight:700;
}
.od-structured-page .home-rv-journal-item strong{
  display:-webkit-box;
  overflow:hidden;
  color:#152c42;
  font-size:17px;
  font-weight:850;
  line-height:1.5;
  letter-spacing:-.025em;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
}
.od-structured-page .home-rv-journal-item p{
  display:-webkit-box;
  overflow:hidden;
  margin:7px 0 0;
  color:#657a8e;
  font-size:13px;
  line-height:1.65;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
}
.od-structured-page .home-rv-journal-item figure{
  width:112px;
  height:78px;
  margin:0;
  overflow:hidden;
  border-radius:9px;
  background:#e8f0f6;
}
.od-structured-page .home-rv-journal-item figure img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.od-structured-page .home-rv-journal-item:hover strong{
  color:#155a97;
}
.od-structured-page .home-rv-journal-column-empty{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:115px;
  gap:7px;
  padding:24px 4px;
}
.od-structured-page .home-rv-journal-column-empty strong{
  color:#40576d;
  font-size:16px;
}
.od-structured-page .home-rv-journal-column-empty span{
  color:#7c8fa1;
  font-size:13px;
}

/* Mobile retains its compact news-list behavior with the same active tab. */
@media(max-width:760px){
  .od-structured-page .home-rv-journal{
    padding-bottom:54px!important;
  }
  .od-structured-page .home-rv-journal-head--compact{
    margin-bottom:20px!important;
  }
  .od-structured-page .home-rv-journal-head--compact .home-rv-journal-copy h2{
    font-size:27px;
  }
  .od-structured-page .home-rv-journal-head--compact .home-rv-journal-copy p{
    font-size:13px;
  }
  .od-structured-page .home-rv-journal-head--compact .home-rv-journal-more{
    display:none!important;
  }
  .home-rv-journal-tabs{
    display:flex;
    width:100%;
    min-height:49px;
    margin-bottom:12px;
    padding:4px;
    gap:4px;
    border-radius:11px;
  }
  .home-rv-journal-tabs button{
    flex:1 0 0;
    min-width:0;
    min-height:40px;
    padding:0 8px;
    border-radius:8px;
    font-size:13px;
  }
  .od-structured-page .home-rv-journal-board{
    border-radius:12px;
  }
  .od-structured-page .home-rv-journal-column{
    padding:14px 16px 17px;
  }
  .od-structured-page .home-rv-journal-column-head{
    order:2;
    justify-content:flex-end;
    min-height:42px;
    margin-top:8px;
    padding:4px 0 0;
    border-bottom:0;
  }
  .od-structured-page .home-rv-journal-column-head>div{
    display:none;
  }
  .od-structured-page .home-rv-journal-column-head>a{
    min-height:32px;
    font-size:12px;
  }
  .od-structured-page .home-rv-journal-list{
    order:1;
    gap:0;
    margin:0;
  }
  .od-structured-page .home-rv-journal-item{
    position:relative;
    grid-template-columns:minmax(0,1fr);
    min-height:82px;
    gap:0;
    padding:13px 26px 13px 0;
    border:0;
    border-bottom:1px solid #e7edf4;
    border-radius:0;
    background:transparent;
  }
  .od-structured-page .home-rv-journal-item:last-child{
    border-bottom:1px solid #e7edf4;
  }
  .od-structured-page .home-rv-journal-item:hover,
  .od-structured-page .home-rv-journal-item:focus-visible{
    border-color:#d5e3ed;
    background:transparent;
    transform:none;
  }
  .od-structured-page .home-rv-journal-item::after{
    content:"→";
    position:absolute;
    top:50%;
    right:2px;
    transform:translateY(-50%);
    color:#668198;
    font-size:16px;
  }
  .od-structured-page .home-rv-journal-item time{
    margin-bottom:5px;
    font-size:11px;
  }
  .od-structured-page .home-rv-journal-item strong{
    font-size:14px;
    line-height:1.45;
  }
  .od-structured-page .home-rv-journal-item p,
  .od-structured-page .home-rv-journal-item figure{
    display:none;
  }
  .od-structured-page .home-rv-journal-column-empty{
    min-height:96px;
    padding:22px 0;
  }
  .od-structured-page .home-rv-journal-column-empty strong{font-size:14px}
  .od-structured-page .home-rv-journal-column-empty span{font-size:12px}
}

/* === 2026-09-30 Homepage hero campaign slider === */
.home-rv-hero-slides{
  position:absolute;
  inset:0;
  z-index:0;
  overflow:hidden;
  pointer-events:none;
}
.home-rv-hero-slide{
  position:absolute;
  inset:0;
  background-image:var(--home-hero-image);
  background-size:cover;
  background-position:center center;
  background-repeat:no-repeat;
  opacity:0;
  transform:scale(1.018);
  transition:opacity .85s ease,transform 6.5s ease;
}
.home-rv-hero-slide.is-active{
  opacity:1;
  transform:scale(1);
}
/* Artwork remains unchanged; the subtle wash gives all three captions
   consistent contrast without outlining the typography. */
.home-rv-hero-slide::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(246,249,252,.78) 0%,rgba(246,249,252,.42) 28%,rgba(246,249,252,0) 62%);
}
.home-rv-hero>.home-rv-shell{
  position:relative;
  z-index:2;
}
.home-rv-hero-copy{
  position:relative;
}
.home-rv-hero-copy-slide{
  display:none;
}
.home-rv-hero-copy-slide.is-active{
  display:block;
}
.home-rv-hero-copy-slide.is-entering .home-rv-eyebrow,
.home-rv-hero-copy-slide.is-entering h1,
.home-rv-hero-copy-slide.is-entering .home-rv-hero-lead{
  animation:homeHeroCopyIn .62s cubic-bezier(.2,.72,.2,1) both;
}
.home-rv-hero-copy-slide.is-entering h1{animation-delay:.08s}
.home-rv-hero-copy-slide.is-entering .home-rv-hero-lead{animation-delay:.16s}
@keyframes homeHeroCopyIn{
  from{opacity:0;transform:translateY(18px)}
  to{opacity:1;transform:translateY(0)}
}
.home-rv-hero-controls{
  position:absolute;
  right:0;
  bottom:28px;
  z-index:5;
  display:flex;
  align-items:center;
  gap:9px;
}
.home-rv-hero-arrow{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  padding:0;
  border:1px solid rgba(23,50,79,.20);
  border-radius:50%;
  background:rgba(255,255,255,.82);
  color:#17324f;
  font-size:21px;
  line-height:1;
  cursor:pointer;
  backdrop-filter:blur(10px);
  transition:background .18s ease,border-color .18s ease,color .18s ease;
}
.home-rv-hero-arrow:hover{
  border-color:#176df0;
  background:#176df0;
  color:#fff;
}
.home-rv-hero-dots{
  display:flex;
  align-items:center;
  gap:7px;
}
.home-rv-hero-dots button{
  width:8px;
  height:8px;
  padding:0;
  border:0;
  border-radius:999px;
  background:rgba(23,50,79,.32);
  cursor:pointer;
  transition:width .2s ease,background .2s ease;
}
.home-rv-hero-dots button.is-active{
  width:28px;
  background:#176df0;
}
@media(max-width:760px){
  .home-rv-hero-slide{
    background-image:var(--home-hero-image-mobile,var(--home-hero-image));
    background-position:center center;
  }
  .home-rv-hero-controls{
    position:relative;
    right:auto;
    bottom:auto;
    justify-content:flex-end;
    margin:12px 0 4px;
  }
  .home-rv-hero-arrow{
    width:32px;
    height:32px;
  }
}
@media(prefers-reduced-motion:reduce){
  .home-rv-hero-slide,
  .home-rv-hero-copy-slide.is-entering .home-rv-eyebrow,
  .home-rv-hero-copy-slide.is-entering h1,
  .home-rv-hero-copy-slide.is-entering .home-rv-hero-lead{
    transition:none!important;
    animation:none!important;
    transform:none!important;
  }
}

/* === 2026-09-30 Hero copy height lock: keep tool cards fixed across slides === */
.home-rv-hero-copy[data-home-hero-copy]{
  display:grid;
}
.home-rv-hero-copy[data-home-hero-copy] .home-rv-hero-copy-slide{
  grid-area:1 / 1;
  width:100%;
  display:block;
  visibility:hidden;
  opacity:0;
  pointer-events:none;
}
.home-rv-hero-copy[data-home-hero-copy] .home-rv-hero-copy-slide.is-active{
  visibility:visible;
  opacity:1;
  pointer-events:auto;
}

/* === 2026-09-30 Hero tools: transparent information layer === */
.home-rv-hero-tools{
  gap:34px;
  overflow:visible;
  border:0;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
}
.home-rv-hero-tool{
  position:relative;
  min-height:156px;
  padding:16px 6px 14px;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
}
.home-rv-hero-tool:not(:last-child)::after{
  content:"";
  position:absolute;
  top:16px;
  right:-17px;
  width:1px;
  height:calc(100% - 32px);
  background:rgba(255,255,255,.34);
  box-shadow:0 0 0 1px rgba(10,24,42,.04);
}
.home-rv-hero-tool-kicker{
  color:#e9f4ff;
  text-shadow:0 1px 4px rgba(3,14,28,.58);
}
.home-rv-hero-tool h2{
  color:#fff;
  text-shadow:0 2px 8px rgba(2,13,27,.62);
}
.home-rv-hero-tool>p,
.home-rv-recent-copy>p{
  color:rgba(255,255,255,.88);
  text-shadow:0 1px 4px rgba(2,13,27,.62);
}
.home-rv-recent-name{
  color:#fff;
  text-shadow:0 1px 4px rgba(2,13,27,.62);
}
.home-rv-hero-tool-action{
  min-width:132px;
  min-height:38px;
  border:0;
  border-radius:6px;
  background:rgba(5,20,38,.78);
  color:#fff;
  box-shadow:0 5px 16px rgba(1,10,20,.18);
  backdrop-filter:blur(5px);
}
.home-rv-hero-tool-action:hover{
  border:0;
  background:#fff;
  color:#10263f;
}
.home-rv-recent-media{
  border:1px solid rgba(255,255,255,.42);
  box-shadow:0 6px 18px rgba(1,10,20,.18);
}

/* Hero slider controls: centered, borderless and high-contrast. */
.home-rv-hero-controls{
  left:50%;
  right:auto;
  bottom:18px;
  transform:translateX(-50%);
  gap:11px;
}
.home-rv-hero-arrow{
  width:34px;
  height:34px;
  border:0;
  border-radius:0;
  background:transparent;
  color:#fff;
  font-size:32px;
  font-weight:300;
  text-shadow:0 2px 6px rgba(0,0,0,.72);
  box-shadow:none;
  backdrop-filter:none;
}
.home-rv-hero-arrow:hover{
  border:0;
  background:transparent;
  color:#dff0ff;
  text-shadow:0 2px 8px rgba(0,0,0,.86);
}
.home-rv-hero-dots{
  gap:8px;
}
.home-rv-hero-dots button{
  width:8px;
  height:8px;
  background:rgba(255,255,255,.68);
  box-shadow:0 1px 5px rgba(0,0,0,.55);
}
.home-rv-hero-dots button.is-active{
  width:28px;
  background:#fff;
  box-shadow:0 1px 6px rgba(0,0,0,.62);
}
@media(max-width:760px){
  .home-rv-hero-tools{
    gap:14px;
  }
  .home-rv-hero-tool{
    min-height:0;
    padding:12px 4px;
  }
  .home-rv-hero-tool:not(:last-child)::after{
    display:none;
  }
  .home-rv-hero-controls{
    position:relative;
    left:auto;
    right:auto;
    bottom:auto;
    transform:none;
    justify-content:center;
    margin:14px 0 2px;
  }
  .home-rv-hero-arrow{
    width:30px;
    height:30px;
    font-size:28px;
  }
}

/* === 2026-09-30 Hero tools glass-panel refinement === */
.home-rv-hero-tools{
  gap:16px;
}
.home-rv-hero-tool{
  min-height:164px;
  padding:18px 20px 16px;
  border:1px solid rgba(255,255,255,.34);
  border-radius:12px;
  background:linear-gradient(180deg,rgba(255,255,255,.22),rgba(255,255,255,.14));
  box-shadow:0 10px 28px rgba(5,20,38,.10);
  -webkit-backdrop-filter:blur(10px) saturate(112%);
  backdrop-filter:blur(10px) saturate(112%);
}
.home-rv-hero-tool:not(:last-child)::after{
  display:none;
}
.home-rv-hero-tool-kicker{
  color:#f2f7fc;
  text-shadow:0 1px 3px rgba(3,14,28,.50);
}
.home-rv-hero-tool h2{
  color:#fff;
  text-shadow:0 2px 7px rgba(2,13,27,.52);
}
.home-rv-hero-tool>p,
.home-rv-recent-copy>p{
  color:rgba(255,255,255,.88);
  text-shadow:0 1px 3px rgba(2,13,27,.48);
}
.home-rv-recent-name{
  color:#fff;
  text-shadow:0 1px 3px rgba(2,13,27,.48);
}
.home-rv-hero-tool-action{
  min-width:132px;
  min-height:38px;
  border:1px solid rgba(255,255,255,.35);
  border-radius:7px;
  background:rgba(9,27,48,.68);
  color:#fff;
  box-shadow:none;
  -webkit-backdrop-filter:blur(6px);
  backdrop-filter:blur(6px);
}
.home-rv-hero-tool-action:hover{
  border-color:#fff;
  background:#fff;
  color:#10263f;
}
.home-rv-recent-media{
  border:1px solid rgba(255,255,255,.36);
  box-shadow:0 5px 16px rgba(1,10,20,.14);
}

/* Slider controls share one exact center line. */
.home-rv-hero-controls{
  left:50%;
  right:auto;
  bottom:16px;
  height:34px;
  transform:translateX(-50%);
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
}
.home-rv-hero-arrow{
  width:30px;
  height:30px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0 0 2px;
  border:0;
  background:transparent;
  color:#fff;
  font-size:28px;
  line-height:1;
  text-shadow:0 2px 6px rgba(0,0,0,.70);
}
.home-rv-hero-dots{
  height:30px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
}
.home-rv-hero-dots button{
  display:block;
  margin:0;
}
@media(max-width:760px){
  .home-rv-hero-tool{
    padding:14px 16px;
    background:linear-gradient(180deg,rgba(255,255,255,.24),rgba(255,255,255,.16));
  }
  .home-rv-hero-controls{
    height:32px;
  }
  .home-rv-hero-dots{
    height:28px;
  }
}

/* === 2026-09-30 Hero glass contrast + exact slider alignment === */
.home-rv-hero-tool-kicker{
  color:#365b7d;
  text-shadow:none;
}
.home-rv-hero-tool h2{
  color:#10263f;
  text-shadow:none;
}
.home-rv-hero-tool>p,
.home-rv-recent-copy>p{
  color:#4f6479;
  text-shadow:none;
}
.home-rv-recent-name{
  color:#17324f;
  text-shadow:none;
}
.home-rv-hero-tool-action{
  border:1px solid rgba(16,38,63,.18);
  background:rgba(16,38,63,.82);
  color:#fff;
}
.home-rv-hero-tool-action:hover{
  border-color:#10263f;
  background:#10263f;
  color:#fff;
}

/* Draw chevrons with CSS instead of text glyphs so they share the bullet centerline. */
.home-rv-hero-arrow{
  position:relative;
  width:28px;
  height:28px;
  flex:0 0 28px;
  padding:0;
  font-size:0;
  line-height:0;
  text-shadow:none;
}
.home-rv-hero-arrow::before{
  content:"";
  position:absolute;
  top:50%;
  left:50%;
  width:8px;
  height:8px;
  border-top:2px solid #fff;
  border-right:2px solid #fff;
  transform-origin:center;
}
.home-rv-hero-arrow.is-prev::before{
  transform:translate(-38%,-50%) rotate(-135deg);
}
.home-rv-hero-arrow.is-next::before{
  transform:translate(-62%,-50%) rotate(45deg);
}
.home-rv-hero-controls{
  height:30px;
  align-items:center;
}
.home-rv-hero-dots{
  height:30px;
  align-items:center;
}
.home-rv-hero-dots button{
  align-self:center;
}

/* The campaign photographs use a restrained readable type palette.
   No stroke-like text shadow: contrast comes from the slide wash. */
.home-rv-hero-copy .home-rv-eyebrow{
  color:#274b69!important;
  text-shadow:none!important;
}
.home-rv-hero-copy h1,
.home-rv-hero-copy h1 strong{
  color:#11263c!important;
  text-shadow:none!important;
}
.home-rv-hero-copy .home-rv-hero-lead{
  color:#30475b!important;
  text-shadow:none!important;
}
.home-rv-hero-copy .home-rv-eyebrow::before{
  background:#274b69!important;
  box-shadow:none!important;
}

/* === 2026-09-30 Mobile hero: one contextual tool per visual === */
@media(max-width:760px){
  .home-rv-hero-visual{
    margin-top:14px!important;
  }

  .home-rv-hero-tools{
    display:block!important;
    width:100%;
  }

  .home-rv-hero-tool{
    display:none!important;
    width:100%;
    min-height:0!important;
    margin:0!important;
    padding:18px 18px 16px!important;
    border-radius:14px!important;
    background:rgba(255,255,255,.86)!important;
    border:1px solid rgba(255,255,255,.72)!important;
    box-shadow:0 12px 28px rgba(10,29,50,.12)!important;
    -webkit-backdrop-filter:blur(10px) saturate(108%)!important;
    backdrop-filter:blur(10px) saturate(108%)!important;
  }

  .home-rv-hero[data-home-hero-index="0"] .home-rv-hero-tool:nth-child(1),
  .home-rv-hero[data-home-hero-index="1"] .home-rv-hero-tool:nth-child(2){
    display:flex!important;
  }

  .home-rv-hero[data-home-hero-index="2"] .home-rv-hero-tool:nth-child(3){
    display:grid!important;
  }

  .home-rv-hero-tool-kicker{
    color:#46627d!important;
    text-shadow:none!important;
  }

  .home-rv-hero-tool h2{
    color:#10263f!important;
    text-shadow:none!important;
  }

  .home-rv-hero-tool>p,
  .home-rv-recent-copy>p{
    color:#5a6c7e!important;
    text-shadow:none!important;
  }

  .home-rv-recent-name{
    color:#17324f!important;
    text-shadow:none!important;
  }

  .home-rv-hero-tool-action{
    min-width:0!important;
    width:auto!important;
    min-height:40px!important;
    margin-top:14px!important;
    padding:0 18px!important;
    border-radius:8px!important;
    background:#314a66!important;
    color:#fff!important;
  }

  .home-rv-hero-tool--recent{
    grid-template-columns:minmax(0,1fr) 92px!important;
    gap:12px!important;
    align-items:start!important;
  }

  .home-rv-recent-media{
    width:92px!important;
    height:92px!important;
  }

  .home-rv-recent-media img{
    width:92px!important;
    height:92px!important;
    min-height:92px!important;
    max-height:92px!important;
  }

  .home-rv-hero-controls{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    transform:none!important;
    width:100%;
    height:30px!important;
    margin:8px 0 2px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
  }

  .home-rv-hero-arrow{
    width:26px!important;
    height:26px!important;
    flex:0 0 26px!important;
  }

  .home-rv-hero-dots{
    height:26px!important;
  }
}

/* === 2026-09-30 Mobile hero spacing: move contextual card toward lower visual area === */
@media(max-width:760px){
  .home-rv-hero-visual{
    margin-top:calc(clamp(56px,12vw,84px) + 50px)!important;
  }

  .home-rv-hero-controls{
    margin-top:10px!important;
  }
}

/* === 2026-09-30 Mobile hero spacing specificity fix === */
@media(max-width:760px){
  .home-rv.od-structured-page .home-rv-hero-visual{
    margin-top:calc(clamp(56px,12vw,84px) + 50px)!important;
  }
}

/* === 2026-09-30 Mobile hero copy stage lock === */
@media(max-width:760px){
  .home-rv.od-structured-page .home-rv-hero-copy[data-home-hero-copy]{
    box-sizing:border-box!important;
    width:100%!important;
    height:210px!important;
    min-height:210px!important;
    max-height:210px!important;
    display:grid!important;
    align-content:start!important;
    overflow:visible!important;
  }

  .home-rv.od-structured-page .home-rv-hero-copy[data-home-hero-copy] .home-rv-hero-copy-slide{
    grid-area:1 / 1!important;
    align-self:start!important;
  }

  .home-rv.od-structured-page .home-rv-hero-visual{
    margin-top:calc(clamp(56px,12vw,84px) + 50px)!important;
  }
}

/* === 2026-09-30 Mobile hero tool glass treatment === */
@media(max-width:760px){
  .home-rv.od-structured-page .home-rv-hero-tool{
    background:rgba(255,255,255,.20)!important;
    border:1px solid rgba(255,255,255,.46)!important;
    box-shadow:
      0 16px 34px rgba(15,35,58,.14),
      inset 0 1px 0 rgba(255,255,255,.34)!important;
    -webkit-backdrop-filter:blur(16px) saturate(128%)!important;
    backdrop-filter:blur(16px) saturate(128%)!important;
  }

  .home-rv.od-structured-page .home-rv-hero-tool h2,
  .home-rv.od-structured-page .home-rv-recent-name{
    color:#10263f!important;
    text-shadow:none!important;
  }

  .home-rv.od-structured-page .home-rv-hero-tool>p,
  .home-rv.od-structured-page .home-rv-recent-copy>p{
    color:#4d6277!important;
    text-shadow:none!important;
  }

  .home-rv.od-structured-page .home-rv-hero-tool-kicker{
    color:#365b7d!important;
    text-shadow:none!important;
  }

  .home-rv.od-structured-page .home-rv-hero-tool-action{
    background:rgba(24,52,78,.86)!important;
    border:1px solid rgba(255,255,255,.24)!important;
    color:#fff!important;
    box-shadow:0 6px 16px rgba(7,24,41,.14)!important;
    -webkit-backdrop-filter:blur(6px)!important;
    backdrop-filter:blur(6px)!important;
  }
}

/* === 2026-09-30 Mobile hero tool compact height === */
@media(max-width:760px){
  .home-rv.od-structured-page .home-rv-hero-tool{
    padding:12px 14px 11px!important;
    border-radius:12px!important;
  }

  .home-rv.od-structured-page .home-rv-hero-tool-kicker{
    margin:0 0 4px!important;
    font-size:8px!important;
    line-height:1.1!important;
  }

  .home-rv.od-structured-page .home-rv-hero-tool h2{
    margin:0!important;
    font-size:18px!important;
    line-height:1.15!important;
  }

  .home-rv.od-structured-page .home-rv-hero-tool>p,
  .home-rv.od-structured-page .home-rv-recent-copy>p{
    margin:5px 0 0!important;
    font-size:11px!important;
    line-height:1.45!important;
  }

  .home-rv.od-structured-page .home-rv-recent-name{
    margin-top:5px!important;
    font-size:13px!important;
    line-height:1.35!important;
  }

  .home-rv.od-structured-page .home-rv-hero-tool-action{
    min-height:34px!important;
    margin-top:10px!important;
    padding:0 14px!important;
    border-radius:7px!important;
    font-size:11px!important;
  }

  .home-rv.od-structured-page .home-rv-hero-tool--recent{
    grid-template-columns:minmax(0,1fr) 68px!important;
    gap:10px!important;
  }

  .home-rv.od-structured-page .home-rv-recent-media{
    width:68px!important;
    height:68px!important;
    border-radius:8px!important;
  }

  .home-rv.od-structured-page .home-rv-recent-media img{
    width:68px!important;
    height:68px!important;
    min-height:68px!important;
    max-height:68px!important;
    object-fit:cover!important;
  }
}

/* Frame the portrait photography around its architectural subject. */
@media(max-width:760px){
  .home-rv-hero-slide{
    background-position:center 55%!important;
  }
  .home-rv-hero-slide::after{
    background:linear-gradient(180deg,rgba(247,249,251,.86) 0%,rgba(247,249,251,.60) 37%,rgba(247,249,251,.08) 72%,transparent 100%);
  }
}

/* === 2026-09-30 Mobile hero card small copy contrast === */
@media(max-width:760px){
  .home-rv.od-structured-page .home-rv-hero-tool-kicker,
  .home-rv.od-structured-page .home-rv-hero-tool>p,
  .home-rv.od-structured-page .home-rv-recent-copy>p{
    color:#000!important;
    text-shadow:
      0 1px 0 rgba(255,255,255,.98),
      1px 0 0 rgba(255,255,255,.92),
      -1px 0 0 rgba(255,255,255,.92),
      0 -1px 0 rgba(255,255,255,.92)!important;
  }
}

/* === Home available view tabs v20261008 === */
.home-rv-available{
  background:#fff!important;
}
.home-rv-unified-head{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(300px,.40fr)!important;
  gap:30px!important;
  align-items:end!important;
  margin-bottom:32px!important;
}
.home-rv-unified-head h2{
  max-width:660px!important;
  margin:0!important;
  color:#102033!important;
  font-size:clamp(32px,3vw,46px)!important;
  line-height:1.08!important;
  letter-spacing:0!important;
}
.home-rv-unified-head p{
  max-width:430px!important;
  margin:0!important;
  color:#627489!important;
  font-size:13px!important;
  line-height:1.7!important;
}

/* Compact segmented view switch: left=list (default), right=map. */
.home-rv-availability-view-switch{
  display:inline-grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:2px!important;
  width:214px!important;
  max-width:100%!important;
  margin:0 0 30px!important;
  padding:4px!important;
  border:1px solid #cbd8e5!important;
  border-radius:999px!important;
  background:#eaf0f7!important;
}
.home-rv-availability-view-switch button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  min-width:0!important;
  min-height:39px!important;
  padding:0 14px!important;
  border:0!important;
  border-radius:999px!important;
  background:transparent!important;
  color:#526a84!important;
  font:inherit!important;
  font-size:12px!important;
  font-weight:800!important;
  cursor:pointer!important;
  transition:background .18s ease,color .18s ease,box-shadow .18s ease!important;
}
.home-rv-availability-view-switch button span{
  font-size:15px;
  line-height:1;
}
.home-rv-availability-view-switch button:hover{
  color:#1a4b7c!important;
}
.home-rv-availability-view-switch button.is-active{
  background:#153d66!important;
  color:#fff!important;
  box-shadow:0 4px 12px rgba(21,61,102,.18)!important;
}
.home-rv-availability-view-switch button:focus-visible{
  outline:2px solid #1f73d8!important;
  outline-offset:2px!important;
}
.home-rv-availability-panels{
  min-width:0!important;
}
.home-rv-availability-panel[hidden]{
  display:none!important;
}
.home-rv-availability-panel.is-active{
  display:block!important;
}

/* 리스트 보기: 가로형 현장 카드를 세로로 정렬한다. */
.home-rv-space-pane{
  position:relative!important;
  min-width:0!important;
}
.home-rv-space-list{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  align-items:stretch!important;
  gap:18px!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
  scroll-snap-type:none!important;
}
.home-rv-space-list>.home-rv-site-card{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
  min-height:0!important;
  height:100%!important;
  max-width:none!important;
  overflow:hidden!important;
  border:1px solid #dfe7ef!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:0 8px 20px rgba(16,36,66,.05)!important;
  transform:none!important;
}
.home-rv-space-list>.home-rv-site-card:hover{
  transform:translateY(-1px)!important;
  box-shadow:0 12px 28px rgba(16,36,66,.08)!important;
}
.home-rv-space-list .home-rv-site-media{
  position:relative!important;
  flex:0 0 auto!important;
  width:100%!important;
  height:auto!important;
  aspect-ratio:16/10!important;
  overflow:hidden!important;
  border-right:0!important;
  border-bottom:1px solid #eef2f6!important;
}
.home-rv-space-list .home-rv-site-media img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
.home-rv-space-list .home-rv-site-body{
  position:static!important;
  display:flex!important;
  flex:1 1 auto!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
  min-width:0!important;
  padding:17px 18px 18px!important;
}
.home-rv-space-list .home-rv-site-body h3{
  margin:0 0 5px!important;
  padding-right:0!important;
  color:#122033!important;
  font-size:19px!important;
  line-height:1.3!important;
  letter-spacing:-.02em!important;
  word-break:keep-all!important;
}
.home-rv-space-list .home-rv-site-address{
  min-height:38px!important;
  margin:0!important;
  color:#66778b!important;
  font-size:12px!important;
  line-height:1.5!important;
}
.home-rv-space-list .home-rv-site-metrics{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:0!important;
  margin:14px 0!important;
  overflow:hidden!important;
  border:1px solid #e1e8f0!important;
  border-radius:9px!important;
  background:#f8fafc!important;
}
.home-rv-space-list .home-rv-site-metric{
  min-width:0!important;
  padding:9px 11px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
}
.home-rv-space-list .home-rv-site-metric:first-child{
  border-right:1px solid #e1e8f0!important;
}
.home-rv-space-list .home-rv-site-metric span{
  display:block!important;
  margin:0 0 3px!important;
  color:#8493a6!important;
  font-size:9px!important;
  font-weight:800!important;
  line-height:1.2!important;
}
.home-rv-space-list .home-rv-site-metric strong{
  display:block!important;
  margin:0!important;
  color:#152236!important;
  font-size:13px!important;
  font-weight:900!important;
  line-height:1.25!important;
  word-break:keep-all!important;
}
.home-rv-space-list .home-rv-site-actions{
  display:block!important;
  margin:auto 0 0!important;
}
.home-rv-space-list .home-rv-site-actions a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:36px!important;
  padding:0 12px!important;
  border:1px solid #142b3e!important;
  border-radius:8px!important;
  background:#142b3e!important;
  color:#fff!important;
  font-size:11px!important;
  font-weight:900!important;
  line-height:1!important;
  white-space:nowrap!important;
}

/* 비교 버튼은 카드 흐름에서 분리해 카드 높이를 절대 바꾸지 않는다. */
.home-rv-space-list .home-rv-site-actions button[data-home-compare-add]{
  position:absolute!important;
  top:12px!important;
  right:12px!important;
  left:auto!important;
  z-index:5!important;
  width:auto!important;
  min-width:86px!important;
  min-height:30px!important;
  padding:0 11px!important;
  border:1px solid rgba(255,255,255,.82)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.92)!important;
  color:#155f9e!important;
  box-shadow:0 7px 18px rgba(9,37,65,.13)!important;
  font:inherit!important;
  font-size:10px!important;
  font-weight:900!important;
  line-height:1!important;
  white-space:nowrap!important;
  cursor:pointer!important;
  transform:none!important;
  -webkit-backdrop-filter:blur(8px)!important;
  backdrop-filter:blur(8px)!important;
}
.home-rv-space-list .home-rv-site-actions button[data-home-compare-add]:hover{
  border-color:#fff!important;
  background:#fff!important;
  color:#0d5fc6!important;
}
.home-rv-space-list .home-rv-site-actions button[data-home-compare-add].is-selected{
  border-color:#1677ff!important;
  background:#1677ff!important;
  color:#fff!important;
}

/* 이미지 정보는 좌상단/하단으로 단순화한다. */
.home-rv-space-list .home-rv-site-badges{
  position:absolute!important;
  top:10px!important;
  left:10px!important;
  right:112px!important;
  z-index:3!important;
  display:flex!important;
  align-items:flex-start!important;
  pointer-events:none!important;
}
.home-rv-space-list .home-rv-site-badge{
  position:static!important;
  display:-webkit-box!important;
  max-width:100%!important;
  min-height:0!important;
  max-height:34px!important;
  padding:5px 8px!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.76)!important;
  border-radius:7px!important;
  background:rgba(255,255,255,.88)!important;
  box-shadow:0 8px 18px rgba(16,36,66,.12)!important;
  color:#0f568f!important;
  font-size:8.5px!important;
  font-weight:900!important;
  line-height:1.28!important;
  word-break:keep-all!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  -webkit-backdrop-filter:blur(8px)!important;
  backdrop-filter:blur(8px)!important;
}
.home-rv-space-list .home-rv-site-whole-floor{
  left:0!important;
  right:0!important;
  bottom:0!important;
  z-index:3!important;
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  width:100%!important;
  max-width:none!important;
  min-height:34px!important;
  padding:0 12px!important;
  border:0!important;
  border-top:1px solid rgba(255,255,255,.24)!important;
  border-radius:0!important;
  background:linear-gradient(90deg,rgba(10,30,46,.88),rgba(10,30,46,.68))!important;
  box-shadow:none!important;
  color:#fff!important;
  font-size:12px!important;
  font-weight:850!important;
  line-height:1!important;
  -webkit-backdrop-filter:blur(8px)!important;
  backdrop-filter:blur(8px)!important;
}
.home-rv-space-list .home-rv-site-whole-floor-icon{
  width:15px!important;
  height:15px!important;
  flex:0 0 auto!important;
}
.home-rv-space-list .home-rv-site-whole-floor i{
  width:1px!important;
  height:14px!important;
  margin:0 1px!important;
  background:rgba(255,255,255,.42)!important;
  color:transparent!important;
}

/* 선택 비교 CTA 역시 overlay라 리스트 높이에 영향을 주지 않는다. */
.home-rv-space-pane>.home-rv-selected-compare-wrap{
  position:fixed!important;
  left:50%!important;
  right:auto!important;
  top:auto!important;
  bottom:24px!important;
  z-index:1200!important;
  width:min(520px,calc(100vw - 48px))!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  transform:translateX(-50%)!important;
  pointer-events:auto!important;
}
.home-rv-space-pane>.home-rv-selected-compare-wrap[hidden]{
  display:none!important;
}
.home-rv-space-pane .home-rv-selected-compare-start{
  width:100%!important;
  min-height:54px!important;
  height:54px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  margin:0!important;
  padding:0 48px 0 18px!important;
  border:1px solid rgba(255,255,255,.22)!important;
  border-radius:999px!important;
  background:rgba(15,65,109,.94)!important;
  color:#fff!important;
  box-shadow:0 14px 34px rgba(7,30,52,.25)!important;
  -webkit-backdrop-filter:blur(10px)!important;
  backdrop-filter:blur(10px)!important;
}
.home-rv-space-pane .home-rv-selected-compare-start span,
.home-rv-space-pane .home-rv-selected-compare-start strong{
  color:#fff!important;
  font-size:13px!important;
}
.home-rv-space-pane .home-rv-selected-compare-clear{
  top:50%!important;
  right:10px!important;
  width:30px!important;
  height:30px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.92)!important;
  color:#0d4f8c!important;
  transform:translateY(-50%)!important;
}

/* 지도 보기: 보조 컬럼 없이 섹션 전체 폭을 사용한다. */
.home-rv-map-pane,
.home-rv-map-pane .home-rv-map-grid,
.home-rv-map-pane .home-rv-map-shell{
  width:100%!important;
  min-width:0!important;
}
.home-rv-map-pane .home-rv-map-grid{
  display:block!important;
}
.home-rv-map-pane .home-rv-map-shell{
  position:relative!important;
  height:560px!important;
  min-height:560px!important;
  max-height:none!important;
  overflow:hidden!important;
  border:1px solid #dce5ef!important;
  border-radius:12px!important;
  box-shadow:0 12px 28px rgba(16,36,66,.06)!important;
}
.home-rv-map-pane .home-site-map{
  width:100%!important;
  height:100%!important;
}
.home-rv-card-pagination,
.od-structured-page .home-rv-map-data{
  display:none!important;
}

@media(max-width:1100px){
  .home-rv-unified-head{
    grid-template-columns:1fr!important;
    gap:10px!important;
    margin-bottom:16px!important;
  }
  .home-rv-unified-head h2{
    font-size:clamp(30px,5vw,40px)!important;
  }
  .home-rv-space-list{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .home-rv-map-pane .home-rv-map-shell{
    height:430px!important;
    min-height:430px!important;
  }
}

@media(max-width:760px){
  .home-rv-available{
    padding-top:30px!important;
    padding-bottom:38px!important;
  }
  .home-rv-unified-head{
    margin-bottom:14px!important;
  }
  .home-rv-unified-head h2{
    font-size:27px!important;
    line-height:1.12!important;
  }
  .home-rv-unified-head p{
    font-size:12px!important;
    line-height:1.62!important;
  }
  .home-rv-availability-view-switch{
    width:214px!important;
    margin-bottom:16px!important;
  }
  .home-rv-availability-view-switch button{
    min-height:39px!important;
    padding:0 10px!important;
    font-size:12px!important;
  }
  .home-rv-space-list{
    grid-template-columns:1fr!important;
    gap:14px!important;
  }
  .home-rv-space-list>.home-rv-site-card{
    min-height:0!important;
    height:100%!important;
  }
  .home-rv-space-list .home-rv-site-media{
    aspect-ratio:2/1!important;
    max-height:210px!important;
  }
  .home-rv-space-list .home-rv-site-body{
    padding:12px 14px 14px!important;
  }
  .home-rv-space-list .home-rv-site-body h3{
    margin-bottom:3px!important;
    font-size:17px!important;
    line-height:1.28!important;
  }
  .home-rv-space-list .home-rv-site-address{
    display:-webkit-box!important;
    min-height:0!important;
    max-height:3em!important;
    overflow:hidden!important;
    font-size:11px!important;
    line-height:1.5!important;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
  }
  .home-rv-space-list .home-rv-site-metrics{
    margin:10px 0!important;
  }
  .home-rv-space-list .home-rv-site-metric{
    padding:7px 8px!important;
  }
  .home-rv-space-list .home-rv-site-metric span{
    font-size:9px!important;
  }
  .home-rv-space-list .home-rv-site-metric strong{
    font-size:12px!important;
    line-height:1.35!important;
  }
  .home-rv-space-list .home-rv-site-actions a{
    min-height:36px!important;
    font-size:12px!important;
  }
  .home-rv-space-list .home-rv-site-actions button[data-home-compare-add]{
    top:10px!important;
    right:10px!important;
    min-height:30px!important;
    font-size:10px!important;
  }
  .home-rv-space-list .home-rv-site-badges{
    top:10px!important;
    left:10px!important;
    right:112px!important;
  }
  .home-rv-space-list .home-rv-site-whole-floor{
    display:flex!important;
    min-height:30px!important;
    padding:0 10px!important;
    font-size:11px!important;
  }
  .home-rv-map-pane .home-rv-map-shell{
    height:320px!important;
    min-height:320px!important;
    border-radius:10px!important;
  }
  .home-rv-space-pane>.home-rv-selected-compare-wrap{
    bottom:calc(14px + env(safe-area-inset-bottom))!important;
    width:calc(100vw - 28px)!important;
  }
  .home-rv-space-pane .home-rv-selected-compare-start{
    min-height:52px!important;
    height:52px!important;
    padding:0 44px 0 16px!important;
  }
  .home-rv-space-pane .home-rv-selected-compare-start span,
  .home-rv-space-pane .home-rv-selected-compare-start strong{
    font-size:12px!important;
  }
}

/* === Hero text only: removed quick-tool cards (2026-10-08) ===
   Preserve the existing carousel while removing the vacant second column. */
.home-rv-hero .home-rv-hero-grid{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:0!important;
  width:100%!important;
  min-height:0!important;
}
.home-rv-hero .home-rv-hero-copy{
  width:min(100%,760px)!important;
  max-width:760px!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
}
.home-rv-hero .home-rv-hero-controls{
  position:absolute!important;
  right:0!important;
  bottom:24px!important;
}
@media(max-width:760px){
  .home-rv.od-structured-page .home-rv-hero-copy[data-home-hero-copy]{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
  }
  .home-rv-hero .home-rv-hero-grid{
    min-height:0!important;
  }
  /* Compact copy preserves the image and keeps the next section in reach. */
  .home-rv.od-structured-page .home-rv-hero h1{
    font-size:clamp(26px,7.5vw,31px)!important;
    line-height:1.12!important;
    letter-spacing:-.045em!important;
  }
  .home-rv.od-structured-page .home-rv-hero .home-rv-eyebrow{
    margin-bottom:11px!important;
    font-size:10px!important;
    letter-spacing:.12em!important;
  }
  .home-rv.od-structured-page .home-rv-hero-lead{
    max-width:310px!important;
    margin-top:12px!important;
    font-size:13px!important;
    line-height:1.55!important;
  }
}

/* === Consistent site header/content alignment, below hero (2026-10-08) ===
   Match the actual site-header .site-shell breakpoints for every homepage section. */
.home-rv.od-structured-page > section:not(.home-rv-hero) .home-rv-shell{
  box-sizing:border-box;
  width:min(1320px,calc(100% - 120px))!important;
  max-width:none!important;
  margin-right:auto!important;
  margin-left:auto!important;
}
@media (min-width:1200px){
  .home-rv.od-structured-page > section:not(.home-rv-hero) .home-rv-shell{
    width:min(1480px,calc(100% - 96px))!important;
  }
}
@media (min-width:1200px) and (max-width:1380px){
  .home-rv.od-structured-page > section:not(.home-rv-hero) .home-rv-shell{
    width:min(1320px,calc(100% - 52px))!important;
  }
}
@media (min-width:901px) and (max-width:1180px){
  .home-rv.od-structured-page > section:not(.home-rv-hero) .home-rv-shell{
    width:calc(100% - 72px)!important;
  }
}
@media (max-width:900px){
  .home-rv.od-structured-page > section:not(.home-rv-hero) .home-rv-shell{
    width:calc(100% - 36px)!important;
  }
}
@media (max-width:560px){
  .home-rv.od-structured-page > section:not(.home-rv-hero) .home-rv-shell{
    width:calc(100% - 28px)!important;
  }
}

/* Nearby-site count markers shown at Kakao zoom level 5 and beyond. */
.home-map-site-cluster{
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  padding:0;
  border:3px solid #fff;
  border-radius:50%;
  background:#278ee2;
  color:#fff;
  box-shadow:0 5px 16px rgba(23,89,158,.25),0 0 0 1px #a9d6fa;
  font:inherit;
  font-size:15px;
  font-weight:850;
  line-height:1;
  cursor:pointer;
  transition:transform .18s ease,background .18s ease,box-shadow .18s ease;
}
.home-map-site-cluster:hover,
.home-map-site-cluster:focus-visible{
  background:#146bb9;
  box-shadow:0 8px 20px rgba(23,89,158,.32),0 0 0 3px rgba(39,142,226,.16);
  transform:scale(1.08);
  outline:none;
}
@media(max-width:600px){
  .home-map-site-cluster{
    width:38px;
    height:38px;
    font-size:13px;
  }
}

/* === AI search focus redesign: restrained navy with cobalt action === */
.home-rv.od-structured-page .home-rv-product{
  position:relative;
  overflow:hidden;
  padding:78px 0 90px!important;
  background:#f5f8fc!important;
}
.home-rv.od-structured-page .home-rv-product::before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:6px;
  background:linear-gradient(90deg,#0e2947 0%,#137fe5 55%,#8bc9ff 100%);
}
.home-rv.od-structured-page .home-rv-ai-head{
  align-items:end!important;
  gap:40px!important;
  margin-bottom:36px!important;
}
.home-rv.od-structured-page .home-rv-ai-head>div{
  flex:1 1 auto!important;
  max-width:920px!important;
}
.home-rv.od-structured-page .home-rv-ai-head .home-rv-eyebrow{
  margin-bottom:20px!important;
  color:#1f75b5!important;
  font-size:13px!important;
  letter-spacing:.18em!important;
}
.home-rv.od-structured-page .home-rv-ai-head h2{
  max-width:none!important;
  margin:0!important;
  color:#13253c!important;
  font-size:clamp(34px,3.15vw,48px)!important;
  font-weight:900!important;
  line-height:1.22!important;
  letter-spacing:-.045em!important;
  word-break:keep-all!important;
}
.home-rv.od-structured-page .home-rv-ai-head h2 strong{
  color:#1169c6!important;
  font-weight:inherit!important;
}
.home-rv.od-structured-page .home-rv-ai-head>p{
  flex:0 1 405px!important;
  max-width:405px!important;
  margin:0 0 5px!important;
  color:#526983!important;
  font-size:16px!important;
  line-height:1.85!important;
}
.home-rv.od-structured-page .home-rv-smart-search--request{
  padding:34px 36px!important;
  border:1px solid #dce5f0!important;
  border-radius:22px!important;
  background:#fff!important;
  box-shadow:0 18px 48px rgba(15,48,83,.065)!important;
}
.home-rv.od-structured-page .home-rv-smart-search--request .home-rv-smart-search__prompt{
  display:grid!important;
  grid-template-columns:48px minmax(0,1fr) auto!important;
  gap:18px!important;
  align-items:center!important;
  padding:16px!important;
  border:1px solid #c8d8e9!important;
  border-radius:14px!important;
  background:#f9fbfe!important;
  box-shadow:none!important;
}
.home-rv.od-structured-page .home-rv-smart-search__prompt>span{
  width:48px!important;
  height:48px!important;
  border-radius:11px!important;
  background:#112d4a!important;
  box-shadow:none!important;
  color:#fff!important;
}
.home-rv.od-structured-page .home-rv-smart-search__input-wrap label{
  color:#536c87!important;
  font-size:14px!important;
  font-weight:800!important;
}
.home-rv.od-structured-page .home-rv-smart-search__prompt input{
  width:100%!important;
  min-width:0!important;
  color:#142b46!important;
  font-size:clamp(17px,1.35vw,20px)!important;
  font-weight:750!important;
}
.home-rv.od-structured-page .home-rv-smart-search__prompt input::placeholder{
  color:#91a1b2!important;
}
.home-rv.od-structured-page .home-rv-smart-search__ai-button{
  min-width:174px!important;
  height:64px!important;
  padding:0 20px!important;
  border-radius:10px!important;
  background:#136ac2!important;
  box-shadow:0 7px 16px rgba(19,106,194,.19)!important;
}
.home-rv.od-structured-page .home-rv-smart-search__ai-button:hover{
  background:#105aa7!important;
  box-shadow:0 10px 24px rgba(19,106,194,.27)!important;
}
.home-rv.od-structured-page .home-rv-smart-search__ai-kicker{
  color:#c9e2fb!important;
}
.home-rv.od-structured-page .home-rv-smart-search__ai-label{
  font-size:18px!important;
}
.home-rv.od-structured-page .home-rv-smart-search__helper{
  margin:16px 2px 0!important;
  color:#61778f!important;
  font-size:13px!important;
  line-height:1.65!important;
}
.home-rv.od-structured-page .home-rv-smart-search__understands{
  margin-top:26px!important;
  padding:22px 0 0!important;
  gap:10px!important;
  border-top:1px solid #e8edf4!important;
}
.home-rv.od-structured-page .home-rv-smart-search__understands strong{
  color:#425d79!important;
  font-size:13px!important;
  margin-right:10px!important;
}
.home-rv.od-structured-page .home-rv-smart-search__understands span{
  min-height:34px!important;
  padding:0 13px!important;
  font-size:12px!important;
  font-weight:750!important;
}
.home-rv.od-structured-page .home-rv-smart-search__examples{
  margin-top:22px!important;
  gap:12px!important;
}
.home-rv.od-structured-page .home-rv-smart-search__examples-label{
  color:#526c88!important;
  font-size:13px!important;
  margin-right:10px!important;
}
.home-rv.od-structured-page .home-rv-smart-search__examples a{
  min-height:43px!important;
  padding:0 16px!important;
  border:1px solid #e2eaf3!important;
  border-radius:9px!important;
  background:#f7faff!important;
  color:#45617e!important;
  font-size:13px!important;
  font-weight:750!important;
}
.home-rv.od-structured-page .home-rv-smart-search__examples a:hover{
  border-color:#91bde6!important;
  background:#eaf5ff!important;
  color:#125da9!important;
}
@media(max-width:900px){
  .home-rv.od-structured-page .home-rv-product{
    padding:60px 0 66px!important;
  }
  .home-rv.od-structured-page .home-rv-ai-head{
    display:block!important;
  }
  .home-rv.od-structured-page .home-rv-ai-head>p{
    max-width:640px!important;
    margin-top:16px!important;
  }
}
@media(max-width:760px){
  .home-rv.od-structured-page .home-rv-product{
    padding:36px 0 42px!important;
  }
  .home-rv.od-structured-page .home-rv-ai-head{
    margin-bottom:17px!important;
  }
  .home-rv.od-structured-page .home-rv-ai-head .home-rv-eyebrow{
    margin-bottom:9px!important;
    font-size:11px!important;
  }
  .home-rv.od-structured-page .home-rv-ai-head h2{
    font-size:clamp(27px,7vw,32px)!important;
    line-height:1.17!important;
  }
  .home-rv.od-structured-page .home-rv-smart-search--request{
    padding:14px!important;
    border-radius:14px!important;
  }
  .home-rv.od-structured-page .home-rv-smart-search--request .home-rv-smart-search__prompt{
    grid-template-columns:30px minmax(0,1fr) 84px!important;
    gap:8px!important;
    padding:8px!important;
  }
  .home-rv.od-structured-page .home-rv-smart-search__prompt>span{
    width:30px!important;
    height:30px!important;
    border-radius:8px!important;
  }
  .home-rv.od-structured-page .home-rv-smart-search__prompt input{
    height:44px!important;
    font-size:16px!important;
  }
  .home-rv.od-structured-page .home-rv-smart-search__ai-button{
    grid-column:auto!important;
    width:84px!important;
    min-width:84px!important;
    height:44px!important;
    align-items:center!important;
    justify-content:center!important;
    padding:0 9px!important;
  }
  .home-rv.od-structured-page .home-rv-smart-search__ai-kicker{
    display:none!important;
  }
  .home-rv.od-structured-page .home-rv-smart-search__ai-label{
    font-size:13px!important;
    gap:2px!important;
    white-space:nowrap!important;
  }
  .home-rv.od-structured-page .home-rv-smart-search__understands{
    display:none!important;
  }
  .home-rv.od-structured-page .home-rv-smart-search__examples{
    display:flex!important;
    gap:7px!important;
    flex-wrap:wrap!important;
    margin-top:12px!important;
  }
  .home-rv.od-structured-page .home-rv-smart-search__examples-label{
    width:100%!important;
    margin:0!important;
  }
  .home-rv.od-structured-page .home-rv-smart-search__examples a{
    width:auto!important;
    min-height:34px!important;
    padding:7px 10px!important;
    font-size:11px!important;
  }
  /* Keep four real links on desktop; only two compact examples on phones. */
  .home-rv.od-structured-page .home-rv-smart-search__examples a:nth-of-type(n+3){
    display:none!important;
  }
}

/* Search prompt label stays above the field, not inside it. */
.home-rv.od-structured-page .od-ai-search-label{margin:0 0 12px 2px;color:#294a6b;font-size:16px;font-weight:850;line-height:1.5;letter-spacing:-.02em}
@media(max-width:640px){.home-rv.od-structured-page .od-ai-search-label{margin-bottom:10px;font-size:15px}}


/* Mobile recommended-site carousel pagination */
.home-rv-space-pagination{
  display:none;
}

@media(max-width:760px){
  .home-rv-space-list[data-od-carousel]{
    display:flex!important;
    grid-template-columns:none!important;
    gap:12px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    margin:0!important;
    padding:0 0 8px!important;
    scroll-snap-type:x mandatory!important;
    scroll-padding-left:0!important;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior-inline:contain;
    scrollbar-width:none;
  }

  .home-rv-space-list[data-od-carousel]::-webkit-scrollbar{
    display:none;
  }

  .home-rv-space-list[data-od-carousel] > [data-od-carousel-item]{
    flex:0 0 100%!important;
    width:100%!important;
    min-width:100%!important;
    scroll-snap-align:start!important;
    scroll-snap-stop:always;
  }

  .home-rv-space-pagination{
    min-height:24px;
    margin:10px 0 0;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:7px;
  }

  .home-rv-space-pagination[hidden]{
    display:none!important;
  }

  .home-rv-space-pagination button{
    width:8px;
    height:8px;
    padding:0;
    border:0;
    border-radius:999px;
    background:#c5ced8;
    transition:width .18s ease,background .18s ease;
  }

  .home-rv-space-pagination button.is-active{
    width:24px;
    background:#173f68;
  }
}

/* === 2026-10-09 Mobile hero pagination: anchor at visual bottom === */
@media(max-width:760px){
  .home-rv.od-structured-page .home-rv-hero{
    position:relative!important;
  }

  .home-rv.od-structured-page .home-rv-hero>.home-rv-shell{
    position:relative!important;
    height:100%!important;
    min-height:0!important;
  }

  .home-rv.od-structured-page .home-rv-hero-controls{
    position:absolute!important;
    left:50%!important;
    right:auto!important;
    top:auto!important;
    bottom:12px!important;
    width:auto!important;
    height:30px!important;
    margin:0!important;
    transform:translateX(-50%)!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    z-index:8!important;
    padding:3px 11px!important;
    border:1px solid rgba(255,255,255,.86)!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.86)!important;
    box-shadow:0 5px 18px rgba(14,39,64,.14)!important;
    backdrop-filter:blur(8px);
  }
  .home-rv.od-structured-page .home-rv-hero-arrow::before{
    border-color:#244d6e;
  }
  .home-rv.od-structured-page .home-rv-hero-dots button{
    background:#9bafc3;
    box-shadow:none;
  }
  .home-rv.od-structured-page .home-rv-hero-dots button.is-active{
    background:#17598f;
    box-shadow:none;
  }
}
