/*
Theme Name: Rusamilae Replica
Theme URI: https://spornew.net/
Author: OpenAI
Description: Classic municipal WordPress theme reconstructed from the Rusamilae-style reference supplied by the site owner. Pink government portal layout, service blocks, activity panels, news boards and community section.
Version: 1.3.8
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: rusamilae-replica
*/
:root{--pink:#e54697;--pink-dark:#a81062;--pink-soft:#ffd6ec;--green:#79f10a;--green-dark:#287d1f;--ink:#29253a;--line:#e7b6d1;--shadow:0 3px 12px rgba(86,32,65,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;font-family:Tahoma,"Noto Sans Thai",Arial,sans-serif;color:#29253a;font-size:14px;line-height:1.55}a{color:#7f1457;text-decoration:none}a:hover{text-decoration:underline}.site-shell{max-width:1120px;margin:0 auto;background:#fff}.top-stripe{height:14px;background:#28364e}.hero{position:relative;overflow:hidden;background:linear-gradient(135deg,#d8f7ff 0,#f8faff 48%,#ffe7f6 100%);min-height:360px;border-bottom:7px solid #f33393}.hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.96}.hero-overlay{position:absolute;inset:auto 0 0 0;height:125px;background:linear-gradient(168deg,transparent 0 25%,rgba(250,0,126,.96) 26% 38%,rgba(255,255,255,.96) 39% 64%,rgba(241,120,191,.65) 65% 70%,transparent 71%)}.hero-inner{position:relative;z-index:2;min-height:360px;padding:28px 42px;display:flex;align-items:flex-start;justify-content:flex-end}.brand-card{text-align:right;text-shadow:0 1px 0 #fff}.brand-card h1{margin:8px 0 0;color:#9c26ce;font-size:46px;line-height:1.05;font-weight:800}.brand-card p{margin:6px 0;color:#a31d4c;font-weight:700}.classic-nav{position:relative;z-index:4;margin:-34px 60px 0;display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.classic-nav a{display:block;background:linear-gradient(#fff,#f1e6eb);border:1px solid #d9bac9;border-radius:6px 6px 0 0;padding:8px 14px;color:#4e253b;font-weight:700;box-shadow:0 2px 6px rgba(0,0,0,.12)}.classic-nav a:hover{background:#fff;text-decoration:none;color:#b3136b}.vision{padding:30px 20px 10px;text-align:center;background:radial-gradient(circle at 50% 0,#fff3fa 0,white 52%)}.vision h2{font-size:24px;margin:0;color:#a61062}.vision strong{display:block;margin-top:6px;font-size:21px;color:#9b2eb0}.leaders{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:20px 105px 35px;background:linear-gradient(90deg,#fff 0,#fff9fd 50%,#fff 100%)}.leader{display:grid;grid-template-columns:145px 1fr;align-items:end;gap:15px}.leader.right{grid-template-columns:1fr 145px}.leader.right .leader-info{order:1;text-align:right}.leader.right .leader-photo{order:2}.leader-photo{height:205px;border:4px solid #df2da1;border-radius:4px;background:linear-gradient(#f2f2f2,#dcdcdc);overflow:hidden;box-shadow:var(--shadow)}.leader-photo img{width:100%;height:100%;object-fit:cover}.leader-info{background:linear-gradient(90deg,#fff,#f0edf3);padding:12px 14px;border-radius:3px;box-shadow:var(--shadow)}.leader-info h3{margin:0 0 4px;color:#122458;font-size:17px}.leader-info p{margin:2px 0}.hotline{display:inline-block;margin-top:9px;padding:4px 10px;border:2px solid #c02685;border-radius:14px;color:#8e0e59;font-weight:700}.banner-row{display:grid;grid-template-columns:1fr 1.1fr;gap:12px;padding:15px 100px}.banner{min-height:100px;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:20px;text-align:center;font-size:26px;font-weight:800;box-shadow:var(--shadow)}.banner.eservice{background:linear-gradient(135deg,#0577dd,#4de60b);color:#fff}.banner.ita{background:linear-gradient(135deg,#0a79c8,#1154a5);color:#ffd827;font-size:36px}.service-hub{margin:0 88px 20px;padding:16px;background:linear-gradient(#ffc6a3,#ffd9c7);border-top:5px solid #f5a37c;display:grid;grid-template-columns:1fr 1.45fr;gap:18px}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.service-btn{min-height:54px;background:linear-gradient(90deg,#dd8a08,#54228d);color:#fff;padding:9px 12px;border-radius:2px;font-weight:700;display:flex;align-items:center;gap:10px;box-shadow:var(--shadow)}.service-btn span{width:32px;height:32px;border-radius:50%;background:#fff8;display:inline-flex;align-items:center;justify-content:center}.lpa{background:linear-gradient(#fff77b,#f2cf16);border-radius:8px;padding:14px;text-align:center;font-size:24px;font-weight:800;color:#263a86}.quick-links{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.quick-links a{background:#fff;border-left:5px solid #f0872a;padding:11px;font-weight:700}.activity{margin:25px 92px;background:#f6b3d6;padding:15px 22px 25px}.section-label{text-align:center;margin:-4px auto 18px;font-size:24px;color:#a3135e;font-weight:800}.activity-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:18px}.activity-feature img,.thumb-grid img{width:100%;display:block;object-fit:cover;background:#eee}.activity-feature img{height:270px}.thumb-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.thumb-grid img{height:98px}.news-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:15px 42px}.panel{border:1px solid #efd4e4;box-shadow:var(--shadow);padding:16px;min-height:300px;position:relative;background:#fff}.panel-title{width:max-content;min-width:255px;margin:-33px auto 15px;padding:6px 25px;text-align:center;background:linear-gradient(#e967ab,#d33f91);border:2px solid #af3478;clip-path:polygon(8% 0,92% 0,100% 50%,92% 100%,8% 100%,0 50%);color:#fff;font-size:20px;font-weight:800;text-shadow:0 1px 1px #744}.panel ul{padding:0;margin:0;list-style:none}.panel li{padding:5px 0 5px 20px;border-bottom:1px dotted #f0d4e3;position:relative}.panel li:before{content:'❀';position:absolute;left:0;color:#e22e82}.panel .more{position:absolute;right:14px;bottom:10px;font-weight:800;color:#222}.board-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:25px 66px}.board-grid .panel{min-height:280px}.utility-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;padding:25px 65px}.utility-box{min-height:310px;border:2px solid #2e8a28;border-radius:20px;background:#fff;overflow:hidden}.utility-title{background:linear-gradient(#b6ff51,#57e500);padding:4px 10px;text-align:center;font-size:19px;font-weight:800;border-bottom:1px solid #2e8a28}.utility-body{padding:18px;font-size:13px}.utility-body ul{padding-left:18px}.partner-strip{margin:12px 65px 45px;display:flex;gap:8px;align-items:center;overflow:hidden}.partner-pill{height:50px;min-width:128px;background:linear-gradient(#fff,#e7e7e7);border:1px solid #bbb;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:12px;text-align:center}.site-footer{min-height:260px;position:relative;background:linear-gradient(180deg,#fff 0,#fce8f5 42%,#d6299d 100%);overflow:hidden}.site-footer:after{content:'';position:absolute;right:0;bottom:0;width:42%;height:100%;background:radial-gradient(circle at 70% 40%,#d6f3ff 0,transparent 25%),linear-gradient(145deg,transparent 25%,rgba(70,174,197,.35) 26%,transparent 60%)}.footer-inner{position:relative;z-index:2;padding:85px 100px 30px;text-align:center;color:#6d184d;font-size:17px;font-weight:700}.footer-inner h2{margin:0 0 6px;color:#9a095b}.content-wrap{padding:35px 50px}.entry-card{background:#fff;border:1px solid #edd7e3;padding:25px;box-shadow:var(--shadow)}
@media(max-width:800px){.site-shell{width:100%}.hero{min-height:250px}.hero-inner{min-height:250px;padding:24px}.brand-card h1{font-size:30px}.classic-nav{margin:-20px 12px 0;gap:5px}.classic-nav a{padding:7px 9px;font-size:12px}.leaders,.banner-row,.service-hub,.news-grid,.board-grid,.utility-grid{grid-template-columns:1fr;padding-left:15px;padding-right:15px;margin-left:0;margin-right:0}.leaders{gap:25px}.leader,.leader.right{grid-template-columns:110px 1fr}.leader.right .leader-photo{order:1}.leader.right .leader-info{order:2;text-align:left}.banner-row{padding:10px 15px}.activity{margin:20px 15px}.activity-grid{grid-template-columns:1fr}.utility-grid{gap:14px}.utility-box{min-height:auto}.partner-strip{margin:10px 15px 30px}.footer-inner{padding:60px 20px 25px}.content-wrap{padding:20px 15px}}

.original-hero,.original-block,.original-footer{max-width:100%;margin:0 auto;text-align:center;background:#fff}.original-hero img,.original-block img,.original-footer img{display:block;width:100%;height:auto}.original-hero{position:relative}.overlay-nav{margin:-28px 80px 12px}.original-block{padding:0 76px}.original-block.awards{padding-top:8px}.activity-shot{padding-top:8px;padding-bottom:16px}.replica-filled{padding-top:30px}.replica-filled .panel{min-height:340px}.panel-title.wide{min-width:355px}.demo-list{font-size:12px;line-height:1.35}.demo-list li{padding:4px 0 4px 18px}.demo-list small{color:#999;font-size:9px;margin-left:6px}.new-badge{display:inline-block;margin-left:5px;color:#ff6a00;font-size:8px;font-weight:bold}.jobs{overflow:hidden}.job-intro{font-size:12px}.job-cards{display:grid;grid-template-columns:1fr 1fr;gap:6px;max-height:230px;overflow-y:auto;padding-right:5px}.job-cards article{border:1px solid #ddd;padding:5px;display:grid;grid-template-columns:110px 1fr;gap:6px;font-size:10px;align-items:start}.job-thumb{height:46px;background:linear-gradient(135deg,#12185a,#18228d);color:#fff;display:flex;align-items:center;justify-content:center;text-align:center;font-size:9px}.job-cards article a{color:#333;line-height:1.25}.job-cards small{grid-column:2;color:#17a4d9}.utility-shot{padding-top:20px}.partners-shot{padding-top:5px}.original-footer{padding:18px 58px 0}.site-footer{display:none!important}
@media(max-width:800px){.original-block,.original-footer{padding-left:0;padding-right:0}.overlay-nav{margin:-18px 8px 10px}.panel-title.wide{min-width:240px;font-size:15px}.job-cards{grid-template-columns:1fr}.job-cards article{grid-template-columns:90px 1fr}.news-grid,.board-grid{padding-left:10px;padding-right:10px}}

/* v1.2 live forum integration */
.forum-live{position:relative}
.forum-live .rsc-latest{margin:54px 18px 42px 18px}
.forum-live .forum-actions{position:absolute;left:18px;right:18px;bottom:10px;display:flex;justify-content:space-between;align-items:center}
.forum-live .forum-actions>a:first-child{font-size:12px;color:#c2146a;text-decoration:none;font-weight:700}
.forum-live .forum-plugin-note{margin:70px 25px;color:#b20a61}


/* v1.3 — SBoards live forum on homepage */
.board-grid{
  align-items:stretch!important;
}
.board-grid .panel{
  min-height:340px!important;
  padding-top:16px!important;
}
.board-grid .panel-title{
  min-width:255px!important;
  width:max-content!important;
  margin:-33px auto 15px!important;
  position:relative!important;
  top:0!important;
}
.forum-live .sboards-home-list{
  list-style:none!important;
  margin:6px 0 42px!important;
  padding:0!important;
  max-height:245px;
  overflow:hidden;
}
.forum-live .sboards-home-list li{
  padding:5px 2px 5px 17px!important;
  border-bottom:1px dotted #efd5e3!important;
  position:relative!important;
  font-size:12px!important;
  line-height:1.35!important;
}
.forum-live .sboards-home-list li:before{
  content:"▪"!important;
  position:absolute!important;
  left:2px!important;
  top:5px!important;
  color:#e04498!important;
}
.forum-live .sboards-home-list a{
  color:#2b1722!important;
  text-decoration:none!important;
}
.forum-live .sboards-home-list a:hover{
  color:#d93f91!important;
  text-decoration:underline!important;
}
.forum-live .sboards-home-meta{
  color:#999!important;
  font-size:9px!important;
  margin-left:6px!important;
  white-space:nowrap!important;
}
.forum-live .sboards-home-new{
  color:#ff6200!important;
  font-size:8px!important;
  font-weight:800!important;
  margin-left:5px!important;
}
.forum-live .forum-actions{
  position:absolute!important;
  left:18px!important;
  right:14px!important;
  bottom:10px!important;
  display:flex!important;
  justify-content:space-between!important;
  align-items:center!important;
}
.forum-live .forum-actions a:first-child{
  color:#d93f91!important;
  font-size:12px!important;
  font-weight:700!important;
}
.forum-live .forum-actions .more{
  position:static!important;
}
.forum-live .forum-empty{
  margin:65px 20px 0!important;
  color:#b20a61!important;
  font-size:13px!important;
}


/* v1.3.1 — align board/jobs title tabs + blinking NEW */
.board-grid > .panel.jobs{
  overflow:visible!important; /* v1.3 had overflow:hidden, clipping the negative title margin */
}
.board-grid > .panel.jobs .job-cards{
  overflow-y:auto!important;  /* scrolling remains only inside the job list */
}
.board-grid > .panel.forum-live,
.board-grid > .panel.jobs{
  margin-top:0!important;
  padding-top:16px!important;
}
.board-grid > .panel.forum-live > .panel-title,
.board-grid > .panel.jobs > .panel-title{
  position:relative!important;
  top:0!important;
  margin:-33px auto 15px!important;
  transform:none!important;
  z-index:5!important;
}

/* NEW blink on news lists and SBoards latest topics */
@keyframes rrNewBlink{
  0%,42%{opacity:1;transform:scale(1)}
  50%,82%{opacity:.18;transform:scale(.94)}
  100%{opacity:1;transform:scale(1)}
}
.new-badge,
.sboards-home-new{
  display:inline-block!important;
  animation:rrNewBlink 1.05s steps(1,end) infinite!important;
  will-change:opacity,transform;
}
@media (prefers-reduced-motion:reduce){
  .new-badge,.sboards-home-new{animation:none!important}
}


/* v1.3.2 — fixed-width classic frame matching the original municipal homepage */
.classic-original-frame{
  width:min(852px,100%);
  max-width:852px;
  margin:0 auto;
  background:#fff;
  overflow:visible;
}
.classic-original-frame .original-hero{
  width:100%;
  max-width:852px;
  margin:0 auto;
}
.classic-original-frame .original-hero img{
  width:100%;
  max-width:852px;
  height:auto;
}
.classic-original-frame .overlay-nav{
  margin:-28px 62px 12px!important;
}
.classic-original-frame .original-block{
  width:100%;
  max-width:852px;
  padding-left:75px!important;
  padding-right:75px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.classic-original-frame .original-block img{
  width:100%!important;
  max-width:702px!important;
  height:auto!important;
  margin:0 auto!important;
}
.classic-original-frame .original-block.awards img{
  max-width:729px!important;
}
.classic-original-frame .original-block.activity-shot img{
  max-width:700px!important;
}
@media(max-width:852px){
  .classic-original-frame{width:100%;max-width:100%}
  .classic-original-frame .overlay-nav{margin:-18px 10px 10px!important}
  .classic-original-frame .original-block{padding-left:12px!important;padding-right:12px!important}
  .classic-original-frame .original-block img{max-width:100%!important}
}


/* v1.3.3 — original Rusamilae top-menu pixel match */
.classic-original-frame .classic-nav.original-menu{
  width:700px!important;
  max-width:calc(100% - 24px)!important;
  margin:-27px auto 12px!important;
  padding:0!important;
  display:grid!important;
  grid-template-columns:45px 107px 70px 96px 96px 91px 62px!important;
  grid-template-rows:26px 28px!important;
  column-gap:5px!important;
  row-gap:3px!important;
  justify-content:center!important;
  align-items:start!important;
  position:relative!important;
  z-index:8!important;
}
.classic-original-frame .classic-nav.original-menu a{
  min-width:0!important;
  height:24px!important;
  padding:3px 5px!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  background:linear-gradient(180deg,#ffffff 0%,#fbf8fa 55%,#eee5ea 100%)!important;
  border:1px solid #d7bac8!important;
  border-radius:3px!important;
  box-shadow:0 2px 4px rgba(70,25,50,.16)!important;
  color:#3f2634!important;
  font-family:Tahoma,"Noto Sans Thai",Arial,sans-serif!important;
  font-size:9px!important;
  line-height:1!important;
  font-weight:700!important;
  text-shadow:0 1px 0 #fff!important;
  text-decoration:none!important;
}
.classic-original-frame .classic-nav.original-menu a:hover,
.classic-original-frame .classic-nav.original-menu a:focus{
  color:#a90c61!important;
  background:#fff!important;
  border-color:#d69ab9!important;
  text-decoration:none!important;
}
.classic-original-frame .classic-nav.original-menu .menu-home{grid-column:1}
.classic-original-frame .classic-nav.original-menu .menu-municipality{grid-column:2}
.classic-original-frame .classic-nav.original-menu .menu-personnel{grid-column:3}
.classic-original-frame .classic-nav.original-menu .menu-news{grid-column:4}
.classic-original-frame .classic-nav.original-menu .menu-plan{grid-column:5}
.classic-original-frame .classic-nav.original-menu .menu-docs{grid-column:6}
.classic-original-frame .classic-nav.original-menu .menu-activity{grid-column:7}
.classic-original-frame .classic-nav.original-menu .menu-contact{
  grid-column:4 / span 1!important;
  grid-row:2!important;
  width:56px!important;
  justify-self:center!important;
  height:24px!important;
}
@media(max-width:720px){
 .classic-original-frame .classic-nav.original-menu{
   width:96%!important;max-width:96%!important;margin:-18px auto 10px!important;
   display:flex!important;flex-wrap:wrap!important;gap:4px!important;
 }
 .classic-original-frame .classic-nav.original-menu a,
 .classic-original-frame .classic-nav.original-menu .menu-contact{
   width:auto!important;height:26px!important;padding:4px 7px!important;font-size:10px!important;
 }
}


/* =========================================================
   v1.3.4 — clean original hero + original-style dropdown menu
   ========================================================= */
.classic-original-frame .original-hero{overflow:visible!important}
.classic-original-frame .original-hero img{width:100%!important;height:auto!important;display:block!important}
.classic-original-frame .classic-nav.original-dropdown-menu{
  position:relative!important;
  z-index:50!important;
  margin:-8px auto 14px!important;
  width:calc(100% - 78px)!important;
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:center!important;
  align-items:flex-start!important;
  gap:5px!important;
  overflow:visible!important;
}
.classic-original-frame .original-dropdown-menu .rr-menu-item{position:relative!important;flex:0 0 auto!important}
.classic-original-frame .original-dropdown-menu .rr-menu-item>a{
  display:block!important;
  min-height:27px!important;
  padding:5px 10px!important;
  background:linear-gradient(#fff,#f3e9ee)!important;
  border:1px solid #d8bdca!important;
  border-radius:4px!important;
  box-shadow:0 2px 5px rgba(0,0,0,.12)!important;
  color:#4d293d!important;
  font-size:11px!important;
  line-height:1.3!important;
  font-weight:700!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}
.classic-original-frame .original-dropdown-menu .has-submenu>a:after{content:' ▾';font-size:9px;color:#b32370}
.classic-original-frame .original-dropdown-menu .rr-menu-item>a:hover,
.classic-original-frame .original-dropdown-menu .rr-menu-item:focus-within>a{background:#fff!important;color:#b4146c!important}
.classic-original-frame .original-dropdown-menu .rr-submenu{
  display:none!important;
  position:absolute!important;
  top:calc(100% - 1px)!important;
  left:0!important;
  width:230px!important;
  margin:0!important;
  padding:5px 0!important;
  list-style:none!important;
  background:#fff!important;
  border:1px solid #d8bdca!important;
  box-shadow:0 9px 22px rgba(80,20,50,.20)!important;
  z-index:999!important;
  text-align:left!important;
}
.classic-original-frame .original-dropdown-menu .rr-submenu-wide{width:285px!important}
.classic-original-frame .original-dropdown-menu .rr-menu-item:hover>.rr-submenu,
.classic-original-frame .original-dropdown-menu .rr-menu-item:focus-within>.rr-submenu{display:block!important}
.classic-original-frame .original-dropdown-menu .rr-submenu li{margin:0!important;padding:0!important;border-bottom:1px solid #f1dee8!important}
.classic-original-frame .original-dropdown-menu .rr-submenu li:last-child{border-bottom:0!important}
.classic-original-frame .original-dropdown-menu .rr-submenu a{
  display:block!important;
  padding:7px 12px!important;
  color:#552b42!important;
  background:#fff!important;
  font-size:12px!important;
  line-height:1.35!important;
  text-decoration:none!important;
}
.classic-original-frame .original-dropdown-menu .rr-submenu a:hover{background:#fff0f7!important;color:#c22e7d!important}
.classic-original-frame .original-dropdown-menu .rr-sub-label{padding:7px 12px!important;background:#fdeaf4!important;color:#9f1f67!important;font-weight:800!important;font-size:11px!important}
.classic-original-frame .original-dropdown-menu .menu-contact-wrap{flex-basis:100%!important;display:flex!important;justify-content:center!important;margin-top:0!important}
.classic-original-frame .original-dropdown-menu .menu-contact-wrap>a{width:max-content!important}
@media(max-width:800px){
 .classic-original-frame .classic-nav.original-dropdown-menu{width:calc(100% - 18px)!important;margin:-4px auto 12px!important;gap:4px!important}
 .classic-original-frame .original-dropdown-menu .rr-menu-item>a{font-size:10px!important;padding:5px 7px!important}
 .classic-original-frame .original-dropdown-menu .rr-submenu,.classic-original-frame .original-dropdown-menu .rr-submenu-wide{position:fixed!important;left:5vw!important;right:5vw!important;top:85px!important;width:90vw!important;max-height:70vh!important;overflow:auto!important}
}


/* =========================================================
   v1.3.5 — full original middle section / native original width
   ========================================================= */
/* The original page uses a wider outer canvas, while each official banner
   keeps its own native width. This removes the artificial 75px squeeze. */
.classic-original-frame{
  width:min(1045px,100%)!important;
  max-width:1045px!important;
  margin:0 auto!important;
  overflow:visible!important;
}
.classic-original-frame .original-hero{
  width:min(852px,100%)!important;
  max-width:852px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.classic-original-frame .original-block{
  width:100%!important;
  max-width:1045px!important;
  padding-left:0!important;
  padding-right:0!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.classic-original-frame .original-block img{
  width:auto!important;
  max-width:100%!important;
  height:auto!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.classic-original-frame .leaders-shot img{width:725px!important;max-width:100%!important}
.classic-original-frame .awards img{width:729px!important;max-width:100%!important}
.classic-original-frame .eservice-shot img{width:702px!important;max-width:100%!important}
.classic-original-frame .services-shot img{width:702px!important;max-width:100%!important}
.classic-original-frame .quick-actions-shot img{width:702px!important;max-width:100%!important}
.classic-original-frame .activity-shot img{width:700px!important;max-width:100%!important}
.classic-original-frame .elearning-shot img{width:700px!important;max-width:100%!important}
.classic-original-frame .quick-actions-shot{padding-top:4px!important;padding-bottom:8px!important}
.classic-original-frame .elearning-shot{padding-top:5px!important;padding-bottom:18px!important}
/* Keep menu aligned to the 852px hero, like the original. */
.classic-original-frame .classic-nav.original-dropdown-menu{
  width:min(700px,calc(100% - 24px))!important;
}
@media(max-width:852px){
  .classic-original-frame{width:100%!important;max-width:100%!important}
  .classic-original-frame .original-block{padding-left:10px!important;padding-right:10px!important}
  .classic-original-frame .original-block img{width:100%!important;height:auto!important}
}


/* =========================================================
   v1.3.6 — Wide Original Desktop Match
   Scale the REAL original-image section, not just its wrapper.
   Base reference ratio: 1120 / 852 = 1.31455
   ========================================================= */
.site-shell{
  max-width:1240px!important;
  width:100%!important;
}
.classic-original-frame{
  width:min(1120px,calc(100% - 24px))!important;
  max-width:1120px!important;
  margin:0 auto!important;
  overflow:visible!important;
}

/* Hero must fill the same desktop canvas as the original site. */
.classic-original-frame .original-hero{
  width:1120px!important;
  max-width:100%!important;
  margin:0 auto!important;
  padding:0!important;
}
.classic-original-frame .original-hero img{
  width:1120px!important;
  max-width:100%!important;
  height:auto!important;
  display:block!important;
  margin:0 auto!important;
}

/* Real HTML menu spans the hero width. */
.classic-original-frame .classic-nav.original-dropdown-menu{
  width:calc(100% - 110px)!important;
  max-width:1010px!important;
  margin:-8px auto 12px!important;
}

/* Scale every supplied original image proportionally to the new hero width. */
.classic-original-frame .original-block{
  max-width:1120px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}
.classic-original-frame .leaders-shot img{
  width:953px!important;
  max-width:96%!important;
}
.classic-original-frame .awards img{
  width:958px!important;
  max-width:96%!important;
}
.classic-original-frame .eservice-shot img{
  width:923px!important;
  max-width:96%!important;
}
.classic-original-frame .services-shot img{
  width:923px!important;
  max-width:96%!important;
}
.classic-original-frame .quick-actions-shot img{
  width:923px!important;
  max-width:96%!important;
}
.classic-original-frame .activity-shot img{
  width:920px!important;
  max-width:96%!important;
}
.classic-original-frame .elearning-shot img{
  width:920px!important;
  max-width:96%!important;
}

/* Keep vertical rhythm close to the source site after scaling. */
.classic-original-frame .leaders-shot{padding-top:28px!important}
.classic-original-frame .awards{padding-top:8px!important}
.classic-original-frame .eservice-shot,
.classic-original-frame .services-shot,
.classic-original-frame .quick-actions-shot,
.classic-original-frame .activity-shot,
.classic-original-frame .elearning-shot{padding-top:8px!important}

/* Lower content should visually line up with the widened original section. */
.replica-filled{
  max-width:1120px!important;
  width:calc(100% - 24px)!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.news-grid{
  padding-left:12px!important;
  padding-right:12px!important;
  gap:18px!important;
}
.board-grid{
  padding-left:32px!important;
  padding-right:32px!important;
  gap:18px!important;
}
.utility-grid{
  padding-left:32px!important;
  padding-right:32px!important;
}
.partner-strip{
  margin-left:32px!important;
  margin-right:32px!important;
}

/* Desktop: slightly larger original-style menu buttons. */
@media(min-width:1000px){
 .classic-original-frame .original-dropdown-menu>li>a{
   padding:7px 13px!important;
   font-size:12px!important;
   min-height:31px!important;
 }
}

/* Responsive fallback */
@media(max-width:1144px){
 .classic-original-frame{
   width:calc(100% - 16px)!important;
   max-width:calc(100% - 16px)!important;
 }
 .classic-original-frame .original-hero,
 .classic-original-frame .original-hero img{
   width:100%!important;
   max-width:100%!important;
 }
}
@media(max-width:800px){
 .site-shell{width:100%!important}
 .classic-original-frame .leaders-shot img,
 .classic-original-frame .awards img,
 .classic-original-frame .eservice-shot img,
 .classic-original-frame .services-shot img,
 .classic-original-frame .quick-actions-shot img,
 .classic-original-frame .activity-shot img,
 .classic-original-frame .elearning-shot img{
   width:100%!important;
   max-width:100%!important;
 }
 .replica-filled{width:100%!important;max-width:100%!important}
}


/* =========================================================
   v1.3.7 — Original menu row + vision boat + sharp native art
   ========================================================= */

/* Master desktop canvas. */
.site-shell{
  max-width:1180px!important;
  width:100%!important;
}
.classic-original-frame{
  width:min(1070px,calc(100% - 24px))!important;
  max-width:1070px!important;
  margin:0 auto!important;
  overflow:visible!important;
}

/* Hero follows the reference canvas. */
.classic-original-frame .original-hero{
  width:1070px!important;
  max-width:100%!important;
  margin:0 auto!important;
}
.classic-original-frame .original-hero img{
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  display:block!important;
}

/* All 8 top-menu items stay on ONE line on desktop. */
.classic-original-frame .classic-nav.original-dropdown-menu{
  width:max-content!important;
  max-width:calc(100% - 20px)!important;
  margin:-8px auto 9px!important;
  padding:0!important;
  display:flex!important;
  flex-wrap:nowrap!important;
  justify-content:center!important;
  align-items:flex-start!important;
  gap:5px!important;
  overflow:visible!important;
}
.classic-original-frame .original-dropdown-menu .rr-menu-item{
  flex:0 0 auto!important;
}
.classic-original-frame .original-dropdown-menu .rr-menu-item>a{
  min-height:27px!important;
  height:27px!important;
  padding:5px 9px!important;
  font-size:10.5px!important;
  line-height:1.25!important;
}
.classic-original-frame .original-dropdown-menu .menu-contact-wrap{
  flex-basis:auto!important;
  display:block!important;
  justify-content:initial!important;
  margin-top:0!important;
}
.classic-original-frame .original-dropdown-menu .menu-contact-wrap>a{
  width:auto!important;
}

/* Vision block from the original layout. */
.rr-original-vision{
  width:900px!important;
  max-width:96%!important;
  min-height:118px!important;
  margin:0 auto 4px!important;
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
  background:
    radial-gradient(circle at 52% 10%,rgba(230,96,177,.13),transparent 35%),
    linear-gradient(180deg,#fff 0%,#fffafd 100%)!important;
}
.rr-original-vision:before,
.rr-original-vision:after{
  content:""!important;
  position:absolute!important;
  width:110px!important;
  height:85px!important;
  opacity:.16!important;
  background:linear-gradient(135deg,#d864b0 0 50%,transparent 50%)!important;
  transform:rotate(28deg)!important;
  pointer-events:none!important;
}
.rr-original-vision:before{left:55px!important;top:14px!important}
.rr-original-vision:after{right:145px!important;top:4px!important;transform:rotate(-28deg)!important}

.rr-vision-copy{
  position:relative!important;
  z-index:2!important;
  text-align:center!important;
  padding-right:155px!important;
}
.rr-vision-copy h2{
  margin:0 0 4px!important;
  color:#a60c61!important;
  font-size:20px!important;
  font-weight:800!important;
}
.rr-vision-copy strong{
  display:block!important;
  color:#9f2caf!important;
  font-size:17px!important;
  font-weight:800!important;
}
.rr-vision-boat{
  position:absolute!important;
  z-index:3!important;
  right:72px!important;
  bottom:-13px!important;
  width:168px!important;
  height:auto!important;
  max-width:none!important;
  filter:drop-shadow(0 5px 5px rgba(70,35,50,.20))!important;
}

/* Keep official middle images close to their real/native proportions. */
.classic-original-frame .leaders-shot img{width:900px!important;max-width:96%!important}
.classic-original-frame .awards img{width:900px!important;max-width:96%!important}
.classic-original-frame .eservice-shot img{width:900px!important;max-width:96%!important}
.classic-original-frame .services-shot img{width:900px!important;max-width:96%!important}
.classic-original-frame .quick-actions-shot img{width:820px!important;max-width:94%!important}
.classic-original-frame .activity-shot img{width:900px!important;max-width:96%!important}

/* E-learning is a small original banner: DO NOT upscale it to 900px. */
.classic-original-frame .elearning-shot{
  width:900px!important;
  max-width:96%!important;
  margin:4px auto 18px!important;
  text-align:left!important;
  padding-left:12px!important;
}
.classic-original-frame .elearning-shot img{
  width:379px!important;
  max-width:55%!important;
  height:auto!important;
  image-rendering:auto!important;
  filter:none!important;
}

/* Align lower original-style sections with the same desktop canvas. */
.replica-filled{
  width:min(1070px,calc(100% - 24px))!important;
  max-width:1070px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Desktop submenu behavior. */
@media(min-width:901px){
  .classic-original-frame .original-dropdown-menu .rr-submenu{
    top:26px!important;
  }
}

/* Tablet/mobile may wrap normally. */
@media(max-width:900px){
  .classic-original-frame{
    width:calc(100% - 12px)!important;
    max-width:calc(100% - 12px)!important;
  }
  .classic-original-frame .classic-nav.original-dropdown-menu{
    width:calc(100% - 12px)!important;
    max-width:calc(100% - 12px)!important;
    flex-wrap:wrap!important;
    margin:-4px auto 10px!important;
  }
  .rr-original-vision{
    width:100%!important;
    min-height:120px!important;
  }
  .rr-vision-copy{
    padding-right:115px!important;
    padding-left:10px!important;
  }
  .rr-vision-copy h2{font-size:17px!important}
  .rr-vision-copy strong{font-size:14px!important}
  .rr-vision-boat{
    width:130px!important;
    right:10px!important;
  }
  .classic-original-frame .elearning-shot img{
    width:379px!important;
    max-width:90%!important;
  }
}


/* =========================================================
   v1.3.8 — Sharp Retina Assets
   The visible width stays the same; source pixels are 2x.
   ========================================================= */
.classic-original-frame img,
.replica-filled img,
.site-footer img{
  image-rendering:auto!important;
  -ms-interpolation-mode:bicubic;
}
.classic-original-frame .original-hero img,
.classic-original-frame .leaders-shot img,
.classic-original-frame .awards img,
.classic-original-frame .eservice-shot img,
.classic-original-frame .services-shot img,
.classic-original-frame .quick-actions-shot img,
.classic-original-frame .activity-shot img,
.classic-original-frame .elearning-shot img,
.utility-image img,
.partner-strip img,
.footer-original img{
  filter:none!important;
  backface-visibility:hidden;
  transform:translateZ(0);
}

/* Preserve the E-Learning banner's compact original look while supplying 2x pixels. */
.classic-original-frame .elearning-shot img{
  width:379px!important;
  max-width:55%!important;
  height:auto!important;
}
