
:root{
  --navy:#0b2f44;
  --navy-2:#123d56;
  --teal:#0f766e;
  --teal-dark:#095f58;
  --orange:#f28c28;
  --orange-dark:#d87514;
  --sand:#f7f2ea;
  --stone:#f4f6f8;
  --ink:#1e2a32;
  --muted:#687884;
  --line:#dbe2e7;
  --white:#ffffff;
  --shadow:0 16px 38px rgba(14,34,48,.13);
  --radius:6px;
  --content:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial, Helvetica, sans-serif;color:var(--ink);background:#fff;line-height:1.55;-webkit-font-smoothing:antialiased}
a{text-decoration:none;color:inherit}
button,input,select,textarea{font:inherit}
img{max-width:100%;display:block}
.container{max-width:var(--content);margin:0 auto;padding:0 22px}
.utility{background:var(--navy);color:#dce9ee;font-size:13px}
.utility .container{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:38px}
.utility-left,.utility-right{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.utility a{color:#fff;font-weight:600}
.utility .divider{height:14px;width:1px;background:rgba(255,255,255,.24)}
.site-header{background:#fff;border-bottom:1px solid rgba(11,47,68,.12);position:sticky;top:0;z-index:80;box-shadow:0 2px 12px rgba(8,30,46,.04)}
.header-inner{height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.logo{display:flex;align-items:center;gap:12px;min-width:220px}
.logo-mark{width:42px;height:42px;border:2px solid var(--navy);display:grid;place-items:center;position:relative;color:var(--navy);font-weight:800;letter-spacing:-.04em}
.logo-mark:before{content:"";position:absolute;inset:7px;border-top:3px solid var(--orange);border-left:3px solid transparent;transform:skewX(-16deg)}
.logo-text strong{display:block;font-size:21px;letter-spacing:.05em;color:var(--navy);line-height:1}
.logo-text span{display:block;font-size:11px;color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin-top:4px}
.main-nav{display:flex;align-items:center;gap:2px;flex:1;justify-content:center}
.main-nav a{font-weight:700;color:#17364a;font-size:15px;padding:28px 14px;position:relative;white-space:nowrap}
.main-nav a:after{content:"";position:absolute;left:14px;right:14px;bottom:18px;height:3px;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:.2s}
.main-nav a:hover:after,.main-nav a.active:after{transform:scaleX(1)}
.header-actions{display:flex;align-items:center;gap:10px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:4px;padding:13px 20px;font-weight:800;cursor:pointer;transition:.18s ease;line-height:1;white-space:nowrap;text-align:center}
.btn-primary{background:var(--orange);color:#fff;box-shadow:0 10px 22px rgba(242,140,40,.22)}
.btn-primary:hover{background:var(--orange-dark);transform:translateY(-1px)}
.btn-ghost{background:#fff;color:var(--navy);border:1px solid var(--line)}
.btn-ghost:hover{border-color:var(--navy);background:#f7fafb}
.btn-dark{background:var(--navy);color:#fff}
.btn-dark:hover{background:#082538;transform:translateY(-1px)}
.btn-link{background:transparent;color:var(--navy);padding:0;font-weight:800;border-bottom:2px solid var(--orange);border-radius:0}
.mobile-toggle{display:none;background:#fff;border:1px solid var(--line);width:44px;height:42px;align-items:center;justify-content:center;border-radius:4px;color:var(--navy)}
.mobile-toggle span{display:block;width:18px;height:2px;background:currentColor;position:relative}
.mobile-toggle span:before,.mobile-toggle span:after{content:"";position:absolute;left:0;width:18px;height:2px;background:currentColor}
.mobile-toggle span:before{top:-6px}.mobile-toggle span:after{top:6px}
.hero-image{height:440px;background-size:cover;background-position:center;position:relative}
.hero-image:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,34,49,.45),rgba(7,34,49,.08) 55%,rgba(7,34,49,.1))}
.hero-badge{position:absolute;left:calc((100% - var(--content))/2 + 22px);bottom:104px;background:rgba(255,255,255,.92);border-left:5px solid var(--orange);padding:16px 22px;box-shadow:0 14px 35px rgba(0,0,0,.16);max-width:510px}
.hero-badge span{display:block;color:var(--teal);text-transform:uppercase;letter-spacing:.1em;font-size:12px;font-weight:800;margin-bottom:4px}
.hero-badge strong{display:block;color:var(--navy);font-size:28px;line-height:1.14}
.search-shell{position:relative;margin-top:-46px;z-index:10}
.search-panel{background:#fff;box-shadow:var(--shadow);border-radius:5px;display:grid;grid-template-columns:1.2fr 1fr 1fr auto;gap:0;border:1px solid rgba(12,47,68,.08);overflow:hidden}
.search-field{padding:14px 18px;border-right:1px solid var(--line)}
.search-field label{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:800;margin-bottom:7px}
.search-field select,.search-field input{border:0;outline:0;width:100%;font-weight:700;color:var(--navy);background:#fff;font-size:15px}
.search-panel .btn{border-radius:0;height:100%;min-width:150px}
.intro{text-align:center;padding:76px 0 38px}
.kicker{display:inline-flex;align-items:center;gap:8px;text-transform:uppercase;color:var(--teal);letter-spacing:.12em;font-weight:800;font-size:12px;margin-bottom:12px}
.kicker:before,.kicker:after{content:"";width:38px;height:1px;background:var(--teal)}
h1,h2,h3{font-family:Georgia, 'Times New Roman', serif;color:var(--navy);line-height:1.15;margin:0}
h1{font-size:43px;max-width:860px;margin:0 auto 17px}
h2{font-size:34px;margin-bottom:16px}h3{font-size:24px}
.lead{font-size:18px;color:#526676;max-width:820px;margin:0 auto}
.section{padding:64px 0}.section-alt{background:var(--sand)}.section-stone{background:var(--stone)}
.section-head{text-align:center;max-width:820px;margin:0 auto 36px}.section-head p{color:var(--muted);font-size:17px;margin:0}
.region-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.region-card{background:#fff;border:1px solid #dce4e8;border-radius:5px;overflow:hidden;box-shadow:0 7px 21px rgba(8,34,49,.06);transition:.2s}
.region-card:hover{transform:translateY(-3px);box-shadow:0 17px 36px rgba(8,34,49,.12)}
.region-image{height:178px;background-size:cover;background-position:center;position:relative}
.region-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.34))}
.region-card h3{font-size:22px;margin:20px 22px 10px}
.region-card ul{list-style:none;padding:0 22px 22px;margin:0;columns:2;column-gap:20px}
.region-card li{break-inside:avoid;margin-bottom:8px;color:#294557;font-weight:700;position:relative;padding-left:14px}
.region-card li:before{content:"";width:5px;height:5px;background:var(--orange);position:absolute;left:0;top:10px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center}
.split-image{min-height:430px;background-size:cover;background-position:center;border-radius:5px;position:relative;box-shadow:var(--shadow)}
.split-image .stamp{position:absolute;right:20px;bottom:20px;background:rgba(255,255,255,.94);border-left:5px solid var(--orange);padding:15px 18px;max-width:250px;color:var(--navy);font-weight:800}
.text-block p{color:#596d7a;font-size:17px}.text-block ul{list-style:none;padding:0;margin:24px 0}.text-block li{padding:12px 0 12px 32px;border-bottom:1px solid #e2e9ed;position:relative;font-weight:700;color:#274657}.text-block li:before{content:"";position:absolute;left:0;top:18px;width:15px;height:8px;border-left:3px solid var(--teal);border-bottom:3px solid var(--teal);transform:rotate(-45deg)}
.program-row{display:grid;grid-template-columns:repeat(4,1fr);gap:26px}
.program-card{background:#fff;border:1px solid #dce4e8;border-radius:5px;overflow:hidden;box-shadow:0 9px 24px rgba(8,34,49,.08)}
.program-img{height:205px;background-size:cover;background-position:center;position:relative}.program-img .tag{position:absolute;left:16px;top:16px;background:var(--navy);color:#fff;padding:7px 11px;border-radius:3px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.program-body{padding:20px}.program-body h3{font-size:22px;margin-bottom:8px}.program-meta{color:var(--teal);font-weight:800;font-size:14px;margin-bottom:10px}.program-body p{color:#5d6f7c;margin:0 0 16px}.locked{display:flex;align-items:center;gap:9px;background:#f8f3eb;border-left:4px solid var(--orange);padding:10px 12px;color:#5e503f;font-weight:800;font-size:13px;margin-bottom:16px}.lock-icon{width:15px;height:15px;display:inline-block;border:2px solid currentColor;border-radius:2px;position:relative}.lock-icon:before{content:"";position:absolute;left:2px;right:2px;top:-8px;height:8px;border:2px solid currentColor;border-bottom:0;border-radius:8px 8px 0 0}
.accordion{max-width:920px;margin:0 auto;border-top:1px solid var(--line)}
.faq-item{border-bottom:1px solid var(--line);background:#fff}.faq-q{width:100%;background:#fff;border:0;padding:20px 58px 20px 22px;text-align:left;font-weight:800;color:var(--navy);position:relative;cursor:pointer}.faq-q:after{content:"+";position:absolute;right:24px;top:18px;font-size:26px;color:var(--orange);line-height:1}.faq-item.open .faq-q:after{content:"–"}.faq-a{display:none;padding:0 22px 22px;color:#5f707b}.faq-item.open .faq-a{display:block}.faq-a p{margin:0}
.more-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.more-card{position:relative;height:230px;background-size:cover;background-position:center;border-radius:5px;overflow:hidden;color:#fff;display:flex;align-items:flex-end}.more-card:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,34,49,.05),rgba(7,34,49,.83))}.more-card div{position:relative;padding:22px}.more-card h3{color:#fff;font-size:24px;margin-bottom:10px}.more-card a{display:inline-flex;color:#fff;font-weight:800;border-bottom:2px solid var(--orange);padding-bottom:3px}
.site-footer{background:#082638;color:#dbe7ed;padding:56px 0 22px}.footer-grid{display:grid;grid-template-columns:1.25fr repeat(3,1fr);gap:34px}.footer-grid h4{margin:0 0 14px;color:#fff;font-size:15px;text-transform:uppercase;letter-spacing:.08em}.footer-grid ul{list-style:none;margin:0;padding:0}.footer-grid li{margin-bottom:10px;color:#bfd1d9}.footer-brand strong{font-size:24px;letter-spacing:.05em;color:#fff}.footer-brand p{color:#bfd1d9;max-width:330px}.footer-bottom{border-top:1px solid rgba(255,255,255,.14);margin-top:36px;padding-top:20px;display:flex;justify-content:space-between;gap:16px;color:#a9bdc6;font-size:13px}
.subpage-title{padding:58px 0 34px;text-align:center}.subpage-title h1{font-size:42px}.subpage-title .lead{max-width:760px}.list-links{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:22px}.pill{padding:9px 14px;border:1px solid var(--line);background:#fff;color:var(--navy);font-weight:800;border-radius:3px;font-size:14px}.timeline{max-width:940px;margin:0 auto;position:relative}.timeline:before{content:"";position:absolute;left:28px;top:0;bottom:0;width:2px;background:#d7e1e5}.step{position:relative;padding-left:86px;margin-bottom:32px}.step-num{position:absolute;left:0;top:0;width:58px;height:58px;border:2px solid var(--teal);background:#fff;color:var(--navy);display:grid;place-items:center;font-weight:900;font-size:20px;border-radius:50%}.step h3{font-size:23px;margin-bottom:7px}.step p{color:#647782;margin:0}.service-band{display:grid;grid-template-columns:280px 1fr;gap:36px;align-items:start;border-top:1px solid var(--line);padding:34px 0}.service-band h3{font-size:25px}.service-band p{margin-top:0;color:#596d7a}.service-list{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.service-list span{background:#fff;border:1px solid #dce4e8;padding:11px 12px;font-weight:700;color:#274657;border-left:4px solid var(--teal)}
.quote-layout{display:grid;grid-template-columns:1.25fr .75fr;gap:36px;align-items:start}.form-box{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);padding:28px;border-radius:5px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-control{display:flex;flex-direction:column;gap:7px}.form-control.full{grid-column:1/-1}.form-control label{font-weight:800;color:var(--navy);font-size:13px}.form-control input,.form-control select,.form-control textarea{border:1px solid #d6e0e5;padding:12px 13px;border-radius:3px;outline:0}.form-control textarea{min-height:138px;resize:vertical}.contact-card{background:var(--navy);color:#fff;padding:28px;border-radius:5px;position:sticky;top:110px}.contact-card h3{color:#fff}.contact-card p{color:#d5e5ec}.contact-line{border-top:1px solid rgba(255,255,255,.15);padding:15px 0;color:#e9f4f7}.contact-line strong{display:block;color:#fff;margin-bottom:4px}.small-note{font-size:12px;color:#70828d;margin-top:10px}.portal-banner{background:var(--navy);color:#fff;border-radius:5px;padding:30px;display:grid;grid-template-columns:1fr auto;gap:22px;align-items:center}.portal-banner h2{color:#fff;margin-bottom:8px}.portal-banner p{margin:0;color:#c9dce4}.map-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.city-tile{background:#fff;border:1px solid var(--line);border-left:4px solid var(--orange);padding:16px;border-radius:4px}.city-tile strong{display:block;color:var(--navy);font-size:18px}.city-tile span{color:#657783;font-size:14px}.breadcrumb{font-size:13px;color:#6f7f89;margin-top:16px}.breadcrumb a{font-weight:700;color:var(--teal)}
@media(max-width:1040px){.main-nav{display:none;position:absolute;left:0;right:0;top:76px;background:#fff;border-top:1px solid var(--line);box-shadow:0 18px 28px rgba(0,0,0,.08);flex-direction:column;align-items:stretch;gap:0}.main-nav.open{display:flex}.main-nav a{padding:16px 24px;border-bottom:1px solid #edf1f3}.main-nav a:after{display:none}.mobile-toggle{display:flex}.header-actions .btn-ghost{display:none}.search-panel{grid-template-columns:1fr 1fr}.search-panel .btn{grid-column:1/-1;height:52px}.hero-badge{left:22px;right:22px;bottom:105px}.region-grid,.program-row,.more-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.service-band{grid-template-columns:1fr}.service-list{grid-template-columns:1fr 1fr}.map-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.utility .container{justify-content:center}.utility-left{display:none}.header-inner{height:68px}.logo{min-width:auto}.logo-text strong{font-size:18px}.logo-mark{width:38px;height:38px}.header-actions .btn-primary{display:none}.main-nav{top:68px}.hero-image{height:360px}.hero-badge{bottom:92px;padding:14px 16px}.hero-badge strong{font-size:23px}.search-shell{margin-top:-32px}.search-panel{grid-template-columns:1fr}.search-field{border-right:0;border-bottom:1px solid var(--line)}h1{font-size:33px}h2{font-size:28px}.intro{padding:60px 0 26px}.section{padding:48px 0}.region-grid,.program-row,.more-grid,.split,.quote-layout{grid-template-columns:1fr}.region-card ul{columns:1}.split-image{min-height:300px}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column}.form-grid{grid-template-columns:1fr}.portal-banner{grid-template-columns:1fr}.service-list{grid-template-columns:1fr}.map-grid{grid-template-columns:1fr}.step{padding-left:72px}.step-num{width:50px;height:50px}.timeline:before{left:24px}.container{padding:0 18px}}


/* Partner login / portal */
.auth-hero{
  min-height:calc(100vh - 114px);
  background:linear-gradient(90deg,rgba(11,47,68,.88),rgba(11,47,68,.58)),url('../images/china-hero.png') center/cover no-repeat;
  display:flex;
  align-items:center;
  padding:70px 0;
}
.auth-wrap{display:grid;grid-template-columns:1fr 430px;gap:44px;align-items:center}
.auth-copy{color:#fff;max-width:660px}
.auth-copy .kicker{color:#f6b36d}
.auth-copy h1{font-size:48px;line-height:1.05;margin:12px 0 18px;color:#fff}
.auth-copy p{font-size:18px;color:rgba(255,255,255,.86);max-width:620px}
.auth-list{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:28px}
.auth-list span{border-left:3px solid var(--orange);background:rgba(255,255,255,.1);padding:11px 13px;font-weight:800}
.login-card,.portal-card{
  background:#fff;
  border:1px solid rgba(11,47,68,.14);
  box-shadow:0 24px 55px rgba(0,0,0,.22);
  border-radius:6px;
  padding:28px;
}
.login-card h2,.portal-card h2{margin:0 0 8px;color:var(--navy);font-size:28px}
.login-card p,.portal-card p{color:var(--muted);margin:0 0 22px}
.login-form{display:grid;gap:15px}
.form-row label{display:block;color:var(--navy);font-weight:800;font-size:13px;margin-bottom:7px}
.form-row input{
  width:100%;
  border:1px solid var(--line);
  border-radius:4px;
  padding:13px 14px;
  outline:0;
  color:var(--ink);
  background:#fff;
}
.form-row input:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(15,118,110,.1)}
.demo-code{
  margin:16px 0 0;
  padding:12px 13px;
  background:var(--sand);
  border-left:3px solid var(--orange);
  color:var(--navy);
  font-size:13px;
}
.login-message{font-size:14px;font-weight:700;min-height:20px;color:var(--teal)}
.login-message.error{color:#b42318}
.portal-top{background:var(--stone);padding:48px 0 22px;border-bottom:1px solid var(--line)}
.portal-top h1{margin:0;color:var(--navy);font-size:42px}
.portal-layout{display:grid;grid-template-columns:280px 1fr;gap:28px;align-items:start}
.portal-sidebar{position:sticky;top:104px;background:#fff;border:1px solid var(--line);border-radius:6px;padding:20px}
.portal-sidebar h3{margin:0 0 12px;color:var(--navy)}
.portal-sidebar a{display:block;padding:10px 0;border-top:1px solid var(--line);font-weight:800;color:var(--navy)}
.portal-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.partner-resource{
  background:#fff;
  border:1px solid var(--line);
  border-radius:6px;
  overflow:hidden;
  box-shadow:0 10px 24px rgba(14,34,48,.08);
}
.partner-resource .resource-img{height:180px;background-size:cover;background-position:center}
.partner-resource .resource-body{padding:20px}
.partner-resource h3{margin:0 0 8px;color:var(--navy);font-size:22px}
.partner-resource p{margin:0 0 16px;color:var(--muted)}
.resource-actions{display:flex;gap:10px;flex-wrap:wrap}
.drive-note{font-size:13px;color:var(--muted);margin-top:14px}
.locked .login-inline{color:var(--navy);border-bottom:2px solid var(--orange);font-weight:800}
@media(max-width:900px){
  .auth-wrap,.portal-layout{grid-template-columns:1fr}
  .auth-copy h1{font-size:38px}
  .portal-sidebar{position:static}
  .portal-grid{grid-template-columns:1fr}
}
@media(max-width:620px){
  .auth-list{grid-template-columns:1fr}
  .login-card,.portal-card{padding:22px}
  .auth-hero{padding:46px 0}
  .auth-copy h1{font-size:32px}
}


/* v8 structured content modules */
.hero-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:28px}.icon-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.icon-card{background:#fff;border:1px solid var(--line);border-radius:5px;padding:24px;box-shadow:0 8px 22px rgba(14,34,48,.06)}.icon-card h3{font-size:21px;margin-bottom:8px}.icon-card p{color:var(--muted);margin:0}.line-icon{display:block;width:38px;height:38px;border:2px solid var(--teal);border-radius:4px;margin-bottom:14px;position:relative}.line-icon:after{content:"";position:absolute;left:10px;top:10px;width:14px;height:9px;border-left:2px solid var(--orange);border-bottom:2px solid var(--orange);transform:rotate(-45deg)}.stats-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);margin-top:34px;border:1px solid var(--line)}.stats-strip div{background:#fff;padding:24px;text-align:center}.stats-strip strong{display:block;color:var(--navy);font-size:34px}.stats-strip span{font-weight:800;color:var(--muted);font-size:13px;text-transform:uppercase;letter-spacing:.06em}.service-list-wide{grid-template-columns:repeat(4,1fr)}.program-row-four{grid-template-columns:repeat(3,1fr)}.program-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.program-actions .btn{padding:10px 14px;font-size:13px}.case-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.case-strip article{background:#fff;border:1px solid var(--line);border-left:4px solid var(--orange);padding:20px;border-radius:4px}.case-strip strong{display:block;color:var(--navy);font-size:18px}.case-strip span{color:var(--muted);font-weight:700}.contact-methods{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.contact-methods a{background:#fff;border:1px solid var(--line);padding:20px;text-align:center;color:var(--navy);font-weight:900;border-bottom:4px solid var(--teal);border-radius:4px}.service-band-image{grid-template-columns:340px 1fr}.service-thumb{min-height:230px;background-size:cover;background-position:center;border-radius:5px;box-shadow:var(--shadow)}.two-col-list{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:18px}.two-col-list h4{color:var(--navy);margin:0 0 8px}.two-col-list ul{margin:0;padding-left:19px;color:var(--muted);font-weight:700}.arrange-cloud{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.arrange-cloud span{background:#fff;border:1px solid var(--line);padding:12px 16px;border-radius:3px;color:var(--navy);font-weight:900}.cta-panel{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:5px;padding:34px;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center}.cta-panel p{color:var(--muted);margin:0}.cta-actions{display:flex;gap:12px;flex-wrap:wrap}.china-map-panel{display:grid;grid-template-columns:360px 1fr;gap:28px;align-items:center;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);padding:28px}.map-visual{min-height:260px;background:linear-gradient(135deg,#e8f2f3,#fff2df);border:1px solid var(--line);display:grid;place-items:center;text-align:center;color:var(--navy);font-size:46px;font-weight:900;letter-spacing:.08em}.map-visual span{display:block;font-size:14px;letter-spacing:.1em;color:var(--teal);text-transform:uppercase;margin-top:8px}.map-city-list{display:flex;flex-wrap:wrap;gap:10px}.map-city-list a{background:var(--stone);border:1px solid var(--line);padding:10px 14px;color:var(--navy);font-weight:900;border-left:3px solid var(--orange)}.city-detail{background:#fff;border:1px solid var(--line);border-radius:5px;padding:28px;margin-bottom:22px}.city-detail-head span{color:var(--teal);font-weight:900;text-transform:uppercase;letter-spacing:.08em;font-size:12px}.city-detail-head h3{font-size:30px;margin:6px 0 18px}.city-info-grid{display:grid;grid-template-columns:1fr 340px;gap:28px}.city-info-grid h4{color:var(--navy);margin:0 0 8px}.fact-box{background:var(--stone);padding:20px;border-left:4px solid var(--teal);display:grid;gap:5px}.fact-box strong{color:var(--navy);font-size:13px;text-transform:uppercase;letter-spacing:.06em}.fact-box span{margin-bottom:10px;color:var(--muted);font-weight:700}.theme-lines{display:grid;gap:12px;max-width:900px;margin:0 auto}.theme-lines div{display:grid;grid-template-columns:260px 1fr;gap:18px;align-items:center;background:#fff;border:1px solid var(--line);padding:16px 18px;border-left:4px solid var(--orange)}.theme-lines strong{color:var(--navy)}.theme-lines span{color:var(--muted);font-weight:700}.browse-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.browse-grid div,.duration-grid article{background:#fff;border:1px solid var(--line);padding:20px;border-radius:4px}.browse-grid strong,.duration-grid h3{display:block;color:var(--navy);font-size:18px;margin-bottom:8px}.browse-grid span,.duration-grid p{color:var(--muted);font-weight:700}.duration-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.team-placeholder,.values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.team-placeholder div,.values-grid article{background:#fff;border:1px solid var(--line);padding:22px;border-radius:4px}.values-grid{grid-template-columns:repeat(5,1fr)}.values-grid h3{font-size:19px}.values-grid p{color:var(--muted);margin:0}.map-placeholder{height:280px;background:linear-gradient(135deg,#e7edf0,#f7f1e7);border:1px solid var(--line);display:grid;place-items:center;text-align:center;color:var(--navy);font-weight:900;border-radius:5px}.map-placeholder span{display:block;color:var(--muted);font-weight:700;margin-top:6px}.city-grid-nine{grid-template-columns:repeat(3,1fr)}
@media(max-width:1100px){.program-row-four,.browse-grid,.duration-grid,.values-grid{grid-template-columns:repeat(2,1fr)}.icon-grid{grid-template-columns:repeat(2,1fr)}.service-list-wide{grid-template-columns:repeat(2,1fr)}.case-strip,.contact-methods,.team-placeholder{grid-template-columns:repeat(2,1fr)}.service-band-image,.china-map-panel,.city-info-grid,.cta-panel{grid-template-columns:1fr}.city-grid-nine{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.icon-grid,.stats-strip,.program-row-four,.browse-grid,.duration-grid,.case-strip,.contact-methods,.team-placeholder,.values-grid,.city-grid-nine{grid-template-columns:1fr}.two-col-list{grid-template-columns:1fr}.theme-lines div{grid-template-columns:1fr}.cta-panel{padding:24px}.hero-actions,.cta-actions{justify-content:flex-start}.service-thumb{min-height:210px}.map-visual{min-height:200px;font-size:34px}}


/* ================================
   RedGate logo theme override
   Based on the supplied RedGate DMC logo
   Keep v8 content/module structure intact
================================ */
:root{
  --navy:#1c1b20;
  --navy-2:#2a2830;
  --teal:#9b261f;
  --teal-dark:#7a1e18;
  --orange:#b92a22;
  --orange-dark:#8f1f19;
  --sand:#f9f3f2;
  --stone:#f6f4f4;
  --ink:#242228;
  --muted:#6d676d;
  --line:#e5dddc;
  --shadow:0 16px 38px rgba(28,27,32,.13);
}
.utility{background:#1c1b20;color:#efe8e7}
.site-header{border-bottom:1px solid rgba(185,42,34,.15);box-shadow:0 2px 14px rgba(28,27,32,.06)}
.logo{min-width:300px;display:flex;align-items:center}
.logo img{height:58px;width:auto;display:block}
.logo-mark,.logo-text{display:none!important}
.main-nav a{color:#2b2830}
.main-nav a:hover,.main-nav a.active{color:#b92a22}
.main-nav a:after{background:#b92a22}
.btn-primary{background:#b92a22;color:#fff;box-shadow:0 10px 22px rgba(185,42,34,.22)}
.btn-primary:hover{background:#8f1f19;transform:translateY(-1px)}
.btn-ghost{color:#1c1b20;border-color:#e5dddc;background:#fff}
.btn-ghost:hover{border-color:#b92a22;color:#b92a22;background:#fff8f7}
.btn-dark{background:#1c1b20;color:#fff}
.btn-dark:hover{background:#2a2830}
.btn-link{color:#b92a22;border-bottom-color:#b92a22}
.mobile-toggle{color:#1c1b20;border-color:#e5dddc}
.hero-image:before{background:linear-gradient(90deg,rgba(28,27,32,.58),rgba(28,27,32,.16) 55%,rgba(28,27,32,.12))}
.hero-badge{border-left-color:#b92a22}
.hero-badge span,.kicker,.program-meta,.breadcrumb a{color:#b92a22}
.kicker:before,.kicker:after,.main-nav a:after,.region-card li:before{background:#b92a22}
h1,h2,h3,.search-field select,.search-field input,.city-tile strong{color:#1c1b20}
.region-card,.program-card,.form-box,.city-tile,.login-card,.portal-card{border-color:#e5dddc;box-shadow:0 10px 24px rgba(28,27,32,.07)}
.region-card:hover{box-shadow:0 17px 36px rgba(28,27,32,.12)}
.region-card li,.text-block li,.service-list span{color:#3a3336}
.text-block li:before{border-left-color:#b92a22;border-bottom-color:#b92a22}
.split-image .stamp,.locked,.demo-code{border-left-color:#b92a22}
.program-img .tag,.contact-card{background:#1c1b20}
.faq-q:after{color:#b92a22}
.service-list span{border-left-color:#b92a22;border-color:#e5dddc;background:#fff}
.step-num{border-color:#b92a22;color:#1c1b20}
.city-tile{border-left-color:#b92a22}
.portal-banner{background:linear-gradient(135deg,#1c1b20,#2a2830)}
.site-footer{background:#17161b;color:#e5dcda}
.footer-logo{height:62px;width:auto;display:block;margin-bottom:18px;background:#fff;padding:10px 12px;border-radius:6px}
.footer-brand p,.footer-grid li{color:#cfc4c3}
.footer-bottom{color:#b8adac}
.auth-hero{background:linear-gradient(90deg,rgba(28,27,32,.9),rgba(28,27,32,.6)),url('../images/china-hero.png') center/cover no-repeat}
.form-row input:focus,.form-control input:focus,.form-control select:focus,.form-control textarea:focus{border-color:#b92a22;box-shadow:0 0 0 3px rgba(185,42,34,.12)}
.login-message{color:#b92a22}
@media(max-width:1040px){
  .logo{min-width:260px}
  .logo img{height:52px}
}
@media(max-width:720px){
  .header-inner{height:72px}
  .logo{min-width:auto;max-width:210px}
  .logo img{height:44px}
  .main-nav{top:72px}
}
@media(max-width:420px){
  .logo{max-width:178px}
  .logo img{height:38px}
}


/* === RedGate v8: icon and subpage title refinement === */
.subpage-intro{
  text-align:left;
  padding:54px 0 46px;
  background:linear-gradient(180deg,#fff 0%,#fff7f6 100%);
  border-bottom:1px solid rgba(185,42,34,.12);
}
.subpage-intro .container{position:relative;max-width:1180px}
.subpage-intro .kicker{
  justify-content:flex-start;
  margin-bottom:12px;
  color:#b92a22;
  font-size:12px;
  letter-spacing:.16em;
}
.subpage-intro .kicker:before{width:34px;height:2px;background:#b92a22}
.subpage-intro .kicker:after{display:none}
.subpage-intro h1{
  margin:0 0 16px;
  max-width:850px;
  font-size:46px;
  line-height:1.08;
  color:#1c1b20;
  letter-spacing:-.02em;
}
.subpage-intro h1:after{
  content:"";
  display:block;
  width:72px;
  height:4px;
  background:#b92a22;
  margin-top:18px;
}
.subpage-intro .lead{
  margin:0;
  max-width:820px;
  font-size:18px;
  line-height:1.65;
  color:#625d65;
}
.hero-badge{
  border-left-color:#b92a22;
  border-radius:2px;
}
.hero-badge span{color:#b92a22}
.hero-badge strong{font-family:Georgia,'Times New Roman',serif;letter-spacing:-.01em}

.icon-grid{gap:22px}
.icon-card{
  position:relative;
  border-color:#e7dddd;
  box-shadow:0 10px 24px rgba(28,27,32,.06);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.icon-card:hover{
  transform:translateY(-3px);
  border-color:rgba(185,42,34,.38);
  box-shadow:0 18px 38px rgba(28,27,32,.11);
}
.icon-card h3{color:#1c1b20}
.icon-card p{color:#6e6970}
.line-icon{
  width:46px;
  height:46px;
  display:block;
  margin-bottom:16px;
  position:relative;
  color:#b92a22;
  border:0;
  border-radius:0;
  background:transparent;
}
.line-icon:before,.line-icon:after{box-sizing:border-box}
.icon-card .line-icon:before,
.icon-card .line-icon:after{content:"";position:absolute;display:block}
/* 1 Coverage: globe */
.icon-card:nth-child(1) .line-icon{
  border:2px solid currentColor;
  border-radius:50%;
}
.icon-card:nth-child(1) .line-icon:before{
  left:10px;right:10px;top:-2px;bottom:-2px;
  border-left:2px solid currentColor;
  border-right:2px solid currentColor;
  border-radius:50%;
}
.icon-card:nth-child(1) .line-icon:after{
  left:6px;right:6px;top:21px;height:2px;background:currentColor;
}
/* 2 Support: clock */
.icon-card:nth-child(2) .line-icon{
  border:2px solid currentColor;
  border-radius:50%;
}
.icon-card:nth-child(2) .line-icon:before{
  width:2px;height:14px;background:currentColor;left:22px;top:10px;
  transform-origin:bottom center;
}
.icon-card:nth-child(2) .line-icon:after{
  width:13px;height:2px;background:currentColor;left:22px;top:23px;
  transform:rotate(-24deg);transform-origin:left center;
}
/* 3 Tailor-made: route */
.icon-card:nth-child(3) .line-icon:before{
  left:8px;right:8px;top:22px;height:2px;background:currentColor;
  box-shadow:0 -12px 0 rgba(185,42,34,.18),0 12px 0 rgba(185,42,34,.18);
}
.icon-card:nth-child(3) .line-icon:after{
  width:12px;height:12px;border:2px solid currentColor;border-radius:50%;left:2px;top:16px;
  box-shadow:28px 0 0 -2px #fff,28px 0 0 0 currentColor;
}
/* 4 Fast quotation: document */
.icon-card:nth-child(4) .line-icon{
  border:2px solid currentColor;border-radius:3px;
}
.icon-card:nth-child(4) .line-icon:before{
  width:14px;height:14px;right:-2px;top:-2px;background:#fff;border-left:2px solid currentColor;border-bottom:2px solid currentColor;
}
.icon-card:nth-child(4) .line-icon:after{
  left:10px;right:10px;top:18px;height:2px;background:currentColor;
  box-shadow:0 9px 0 rgba(185,42,34,.42);
}
/* 5 Local expertise: location pin */
.icon-card:nth-child(5) .line-icon:before{
  width:32px;height:32px;left:7px;top:3px;border:2px solid currentColor;border-radius:50% 50% 50% 0;transform:rotate(-45deg);
}
.icon-card:nth-child(5) .line-icon:after{
  width:10px;height:10px;left:18px;top:14px;border:2px solid currentColor;border-radius:50%;background:#fff;
}
/* 6 Partner: linked blocks */
.icon-card:nth-child(6) .line-icon:before{
  width:24px;height:18px;left:2px;top:8px;border:2px solid currentColor;border-radius:3px;background:#fff;
}
.icon-card:nth-child(6) .line-icon:after{
  width:24px;height:18px;right:2px;bottom:8px;border:2px solid currentColor;border-radius:3px;background:#fff;
  box-shadow:-9px -5px 0 -7px #fff,-9px -5px 0 -5px currentColor;
}

.service-list span,.arrange-cloud span,.map-city-list a,.pill{
  border-color:#e7dddd;
}
.service-list span{border-left-color:#b92a22;color:#3a3336}
.contact-methods a{border-bottom-color:#b92a22}
.fact-box{border-left-color:#b92a22}
.fact-box strong,.city-detail-head span,.map-visual span{color:#b92a22}
.step-num{border-color:#b92a22}
.text-block li:before{border-left-color:#b92a22;border-bottom-color:#b92a22}

@media(max-width:720px){
  .subpage-intro{padding:42px 0 34px;text-align:left}
  .subpage-intro h1{font-size:34px}
  .subpage-intro .lead{font-size:16px}
  .subpage-intro h1:after{width:58px;margin-top:14px}
  .icon-card{padding:21px}
  .line-icon{width:42px;height:42px}
}


/* v8 centered icon + services grid refinement */
.icon-grid{align-items:stretch}
.icon-card{padding:28px 22px 24px;text-align:center;border-radius:8px;box-shadow:0 10px 24px rgba(28,27,32,.06);transition:transform .2s ease, box-shadow .2s ease,border-color .2s ease;position:relative;overflow:hidden}
.icon-card:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,var(--orange),rgba(185,42,34,0))}
.icon-card:hover{transform:translateY(-3px);box-shadow:0 16px 30px rgba(28,27,32,.1);border-color:rgba(185,42,34,.2)}
.icon-card h3{font-size:20px;margin-bottom:10px}
.icon-card p{max-width:290px;margin:0 auto;color:var(--muted)}
.line-icon{display:block;width:64px;height:64px;margin:0 auto 16px;border:1px solid rgba(185,42,34,.16);border-radius:50%;background-color:#fff7f6;background-position:center;background-repeat:no-repeat;background-size:30px 30px;position:relative;box-shadow:inset 0 0 0 6px rgba(185,42,34,.04)}
.line-icon:after{display:none}
.icon-globe{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b92a22' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='8.5'/%3E%3Cpath d='M3.8 12h16.4M12 3.8c2.7 2.2 4.2 5.1 4.2 8.2S14.7 18 12 20.2M12 3.8C9.3 6 7.8 8.9 7.8 12s1.5 6 4.2 8.2'/%3E%3C/svg%3E")}
.icon-headset{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b92a22' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4.5 12a7.5 7.5 0 0 1 15 0'/%3E%3Crect x='4' y='11' width='4' height='7' rx='1.4'/%3E%3Crect x='16' y='11' width='4' height='7' rx='1.4'/%3E%3Cpath d='M20 18c0 1.7-1.3 3-3 3h-2.5'/%3E%3C/svg%3E")}
.icon-route{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b92a22' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 18c0-2 1.8-3.4 4.2-3.4h3.6c2.4 0 4.2-1.4 4.2-3.4S16.2 7.8 13.8 7.8H9.7'/%3E%3Cpath d='M7 6 4 8.8 7 11.6'/%3E%3Ccircle cx='18' cy='17.5' r='2.2'/%3E%3C/svg%3E")}
.icon-clock{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b92a22' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='8.5'/%3E%3Cpath d='M12 7.5v5l3 2'/%3E%3C/svg%3E")}
.icon-network{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b92a22' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='6' cy='7' r='2'/%3E%3Ccircle cx='18' cy='7' r='2'/%3E%3Ccircle cx='12' cy='17' r='2'/%3E%3Cpath d='M7.7 8.1 10.3 15M16.3 8.1 13.7 15M8 7h8'/%3E%3C/svg%3E")}
.icon-briefcase{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b92a22' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='7' width='16' height='11' rx='2'/%3E%3Cpath d='M9 7V5.8c0-.9.7-1.6 1.6-1.6h2.8c.9 0 1.6.7 1.6 1.6V7M4 11.5h16M10 11.5v1.8h4v-1.8'/%3E%3C/svg%3E")}
.icon-bolt{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b92a22' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m13 2-7 10h5l-1 10 8-12h-5l0-8Z'/%3E%3C/svg%3E")}
.icon-compass{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b92a22' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='8.5'/%3E%3Cpath d='m15.8 8.2-2.4 7.2-7.2 2.4 2.4-7.2 7.2-2.4Z'/%3E%3C/svg%3E")}
.icon-pencil{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b92a22' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4 20 3.7-.8L18.5 8.4a1.9 1.9 0 0 0 0-2.7l-.2-.2a1.9 1.9 0 0 0-2.7 0L4.8 16.3 4 20Z'/%3E%3Cpath d='m13.8 5.8 4.4 4.4'/%3E%3C/svg%3E")}
.icon-tag{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b92a22' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.8 11.3V5.8c0-1 .8-1.8 1.8-1.8h5.5L20 12.9 12.9 20 3.8 11.3Z'/%3E%3Ccircle cx='8.4' cy='8.4' r='1.2'/%3E%3C/svg%3E")}
.service-box-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;max-width:1080px;margin:0 auto}
.service-box-grid span{display:flex;align-items:center;justify-content:center;min-height:76px;padding:18px 16px;text-align:center;background:#fff;border:1px solid var(--line);border-left:4px solid var(--orange);border-radius:4px;color:var(--navy);font-weight:800;box-shadow:0 6px 18px rgba(28,27,32,.05);transition:transform .2s ease, box-shadow .2s ease,border-color .2s ease}
.service-box-grid span:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(28,27,32,.09);border-color:rgba(185,42,34,.2)}
.service-box-grid span:before{content:"";display:block;width:22px;height:22px;margin:0 auto 10px auto;background-position:center;background-repeat:no-repeat;background-size:22px 22px;opacity:.95}
.service-box-grid span{flex-direction:column;gap:0}
.service-box-grid span:nth-child(1):before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b92a22' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 17.5c3.7-4.3 12.3-4.3 16 0M8.5 10.3c2-2 5-2 7 0M12 4.5l.01.01'/%3E%3C/svg%3E")}
.service-box-grid span:nth-child(2):before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b92a22' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4.5 18c1.8-2.5 4.3-4 7.5-4s5.7 1.5 7.5 4'/%3E%3Ccircle cx='8' cy='9' r='2.3'/%3E%3Ccircle cx='16' cy='9' r='2.3'/%3E%3C/svg%3E")}
.service-box-grid span:nth-child(3):before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b92a22' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='5' width='16' height='12' rx='2'/%3E%3Cpath d='M8 19h8M9 9h6M9 12h3'/%3E%3C/svg%3E")}
.service-box-grid span:nth-child(4):before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b92a22' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 20v-7M12 20V9M17 20V5M4 20h16'/%3E%3C/svg%3E")}
.service-box-grid span:nth-child(5):before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b92a22' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4.5 16.5c2.2-2.2 4.4-3.3 7.5-3.3s5.3 1.1 7.5 3.3'/%3E%3Cpath d='M7.5 11.5h9M12 6l3 3-3 3'/%3E%3C/svg%3E")}
.service-box-grid span:nth-child(6):before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b92a22' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 18h14M7 15l3-3 2 2 5-5'/%3E%3C/svg%3E")}
.service-box-grid span:nth-child(7):before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b92a22' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='7' width='16' height='10' rx='2'/%3E%3Cpath d='M8 7V5.8c0-.9.7-1.6 1.6-1.6h4.8c.9 0 1.6.7 1.6 1.6V7'/%3E%3C/svg%3E")}
@media(max-width:1100px){.service-box-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.service-box-grid{grid-template-columns:1fr}.service-box-grid span{min-height:68px;padding:16px 14px}}


/* v8 grid + icon refinement 2026-07-06
   Cleaner centered icons, less strange pseudo-shapes, and more stable responsive grids.
*/
.line-icon:before,
.line-icon:after,
.icon-card .line-icon:before,
.icon-card .line-icon:after,
.icon-card:nth-child(n) .line-icon:before,
.icon-card:nth-child(n) .line-icon:after{
  content:none!important;
  display:none!important;
  box-shadow:none!important;
  border:0!important;
}

.icon-grid{
  max-width:1120px;
  margin-left:auto;
  margin-right:auto;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
}
.icon-card{
  min-height:218px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  text-align:center;
  padding:30px 24px 26px!important;
  border:1px solid rgba(185,42,34,.14)!important;
  border-radius:8px!important;
  background:#fff;
}
.icon-card:before{
  height:2px!important;
  background:linear-gradient(90deg,rgba(185,42,34,0),rgba(185,42,34,.8),rgba(185,42,34,0))!important;
}
.icon-card h3{font-size:20px!important;line-height:1.25;margin:0 0 10px!important;max-width:310px}
.icon-card p{font-size:15px;line-height:1.55;max-width:300px;margin:0 auto!important}
.line-icon{
  width:58px!important;
  height:58px!important;
  margin:0 auto 18px!important;
  border-radius:50%!important;
  border:1px solid rgba(185,42,34,.22)!important;
  background-color:#fff7f6!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  background-size:28px 28px!important;
  box-shadow:inset 0 0 0 7px rgba(185,42,34,.045)!important;
}
.icon-card:hover .line-icon{
  border-color:rgba(185,42,34,.38)!important;
  background-color:#fff3f1!important;
}

/* Replace a few abstract icons with simpler universal business/travel symbols. */
.icon-globe{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b92a22' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='8.5'/%3E%3Cpath d='M3.5 12h17M12 3.5c2.5 2.3 3.8 5.1 3.8 8.5S14.5 18.2 12 20.5M12 3.5C9.5 5.8 8.2 8.6 8.2 12s1.3 6.2 3.8 8.5'/%3E%3C/svg%3E")!important}
.icon-headset{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b92a22' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 13a7 7 0 0 1 14 0'/%3E%3Cpath d='M5 13v3.2A2.8 2.8 0 0 0 7.8 19H9v-6H7a2 2 0 0 0-2 2'/%3E%3Cpath d='M19 13v3.2A2.8 2.8 0 0 1 16.2 19H15v-6h2a2 2 0 0 1 2 2'/%3E%3Cpath d='M15 20h-3'/%3E%3C/svg%3E")!important}
.icon-route{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b92a22' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 18c0-2 1.7-3.2 4.1-3.2h3.8c2.4 0 4.1-1.2 4.1-3.2s-1.7-3.2-4.1-3.2H8'/%3E%3Ccircle cx='6' cy='18' r='2'/%3E%3Ccircle cx='18' cy='8.4' r='2'/%3E%3C/svg%3E")!important}
.icon-clock{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b92a22' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='8.5'/%3E%3Cpath d='M12 7.2v5.1l3.3 2'/%3E%3C/svg%3E")!important}
.icon-network{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b92a22' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='7' cy='7' r='2.2'/%3E%3Ccircle cx='17' cy='7' r='2.2'/%3E%3Ccircle cx='12' cy='17' r='2.2'/%3E%3Cpath d='M8.5 8.8 11 15M15.5 8.8 13 15M9.4 7h5.2'/%3E%3C/svg%3E")!important}
.icon-briefcase{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b92a22' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='8' width='16' height='10' rx='2'/%3E%3Cpath d='M9 8V6.2c0-.9.7-1.6 1.6-1.6h2.8c.9 0 1.6.7 1.6 1.6V8M4 12h16'/%3E%3C/svg%3E")!important}
.icon-bolt{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b92a22' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M13 3 6.5 12H12l-1 9 6.5-10H12l1-8Z'/%3E%3C/svg%3E")!important}
.icon-compass{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b92a22' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='8.5'/%3E%3Cpath d='m15.3 8.7-2.1 5.9-5.9 2.1 2.1-5.9 5.9-2.1Z'/%3E%3C/svg%3E")!important}
.icon-pencil{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b92a22' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4.5 19.5 8 18.8 18.2 8.6a2 2 0 0 0 0-2.8 2 2 0 0 0-2.8 0L5.2 16 4.5 19.5Z'/%3E%3Cpath d='m14 7.2 2.8 2.8'/%3E%3C/svg%3E")!important}
.icon-tag{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b92a22' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 11.5V5.8C4 4.8 4.8 4 5.8 4h5.7L20 12.5 12.5 20 4 11.5Z'/%3E%3Ccircle cx='8.1' cy='8.1' r='1.1'/%3E%3C/svg%3E")!important}

/* Cleaner service overview items: keep icons but make them brand-mark style instead of strange pictograms. */
.service-box-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px!important;
  max-width:1080px!important;
  margin:0 auto!important;
}
.service-box-grid span{
  min-height:82px!important;
  padding:18px 16px!important;
  border-left:4px solid var(--orange)!important;
  border-radius:4px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  line-height:1.25!important;
}
.service-box-grid span:before{
  content:""!important;
  display:block!important;
  width:26px!important;
  height:22px!important;
  margin:0 auto 10px!important;
  background:none!important;
  border:2px solid var(--orange)!important;
  border-bottom:0!important;
  border-radius:3px 3px 0 0!important;
  position:relative!important;
  opacity:.95!important;
}
.service-box-grid span:after{
  content:"";
  display:block;
  width:12px;
  height:12px;
  border:2px solid var(--orange);
  border-top:0;
  border-left:0;
  transform:rotate(45deg);
  margin-top:-25px;
  margin-bottom:11px;
  opacity:.9;
}

/* General grid stabilization across v8 modules */
.program-row-four{
  grid-template-columns:repeat(auto-fit,minmax(255px,1fr))!important;
  gap:22px!important;
}
.browse-grid,
.duration-grid,
.case-strip,
.contact-methods,
.team-placeholder{
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important;
  gap:18px!important;
}
.values-grid{
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important;
  gap:18px!important;
}
.city-grid-nine,
.map-grid.city-grid-nine{
  grid-template-columns:repeat(auto-fit,minmax(230px,1fr))!important;
  gap:16px!important;
}
.service-list-wide:not(.service-box-grid){
  grid-template-columns:repeat(auto-fit,minmax(170px,1fr))!important;
  gap:12px!important;
}
.arrange-cloud{
  max-width:980px;
  margin:0 auto;
  justify-content:center!important;
  gap:12px 14px!important;
}
.arrange-cloud span{
  min-height:46px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
.stats-strip{
  max-width:980px;
  margin-left:auto!important;
  margin-right:auto!important;
}
@media(max-width:1024px){
  .icon-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-width:760px}
  .service-box-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-width:720px!important}
}
@media(max-width:640px){
  .icon-grid,.service-box-grid{grid-template-columns:1fr!important;max-width:440px!important}
  .icon-card{min-height:auto!important;padding:24px 18px!important}
  .line-icon{width:52px!important;height:52px!important;background-size:25px 25px!important}
  .service-box-grid span{min-height:76px!important}
  .program-row-four,.browse-grid,.duration-grid,.case-strip,.contact-methods,.team-placeholder,.values-grid,.city-grid-nine,.map-grid.city-grid-nine{grid-template-columns:1fr!important}
}

/* =========================================================
   WordPress Gutenberg visual-editable module fixes
   Keeps the RedGate HTML demo layout while allowing block editing.
========================================================= */
.wp-block-group{box-sizing:border-box}
.entry-content,.wp-site-blocks{margin:0}
.hero-cover.hero-image{height:550px;min-height:440px!important;margin:0;position:relative;padding:0;overflow:hidden}
.hero-cover.hero-image:before{display:none!important}
.hero-cover .wp-block-cover__inner-container{position:static!important;width:100%;height:100%;max-width:none;color:inherit}
.hero-badge .hero-label,.hero-badge p:first-child{display:block;color:var(--teal);text-transform:uppercase;letter-spacing:.1em;font-size:12px;font-weight:800;margin:0 0 4px}
.hero-badge .hero-title,.hero-badge h2{display:block;color:var(--navy);font-size:28px;line-height:1.14;margin:0;font-family:Georgia,'Times New Roman',serif}
.wp-block-group.container{max-width:var(--content);margin-left:auto;margin-right:auto;padding-left:22px;padding-right:22px}
.wp-block-group.section,.wp-block-group.section-alt,.wp-block-group.section-stone{margin-top:0;margin-bottom:0}
.section .wp-block-group.container,.section-alt .wp-block-group.container,.section-stone .wp-block-group.container{max-width:var(--content)}
.intro .hero-actions .wp-block-buttons,.cta-actions.wp-block-buttons{display:flex;gap:14px;flex-wrap:wrap;justify-content:center}
.wp-block-button.btn{padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important}
.wp-block-button.btn .wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:4px;padding:13px 20px;font-weight:800;cursor:pointer;transition:.18s ease;line-height:1;white-space:nowrap;text-align:center;text-decoration:none}
.wp-block-button.btn-primary .wp-block-button__link{background:var(--orange);color:#fff;box-shadow:0 10px 22px rgba(185,42,34,.22)}
.wp-block-button.btn-primary .wp-block-button__link:hover{background:var(--orange-dark);transform:translateY(-1px)}
.wp-block-button.btn-dark .wp-block-button__link{background:var(--navy);color:#fff}
.wp-block-button.btn-dark .wp-block-button__link:hover{background:var(--navy-2);transform:translateY(-1px)}
.wp-block-button.btn-ghost .wp-block-button__link{background:#fff;color:var(--navy);border:1px solid var(--line)}
.wp-block-button.btn-ghost .wp-block-button__link:hover{border-color:var(--orange);color:var(--orange);background:#fff8f7}
.section-head .wp-block-heading{margin-bottom:16px}.section-head p{color:var(--muted);font-size:17px;margin:0}
.icon-grid.wp-block-group,.service-box-grid.wp-block-group,.program-row.wp-block-group,.region-grid.wp-block-group,.case-strip.wp-block-group,.contact-methods.wp-block-group,.values-grid.wp-block-group,.duration-grid.wp-block-group,.browse-grid.wp-block-group,.city-grid-nine.wp-block-group{display:grid}
.icon-card.wp-block-group{padding:28px 22px 24px;text-align:center;border-radius:8px;box-shadow:0 10px 24px rgba(28,27,32,.06);transition:transform .2s ease, box-shadow .2s ease,border-color .2s ease;position:relative;overflow:hidden;background:#fff;border:1px solid var(--line)}
.icon-card.wp-block-group:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,var(--orange),rgba(185,42,34,0))}
.icon-card.wp-block-group:hover{transform:translateY(-3px);box-shadow:0 16px 30px rgba(28,27,32,.1);border-color:rgba(185,42,34,.2)}
.icon-card .wp-block-heading{font-size:20px;margin:0 0 10px}.icon-card p{max-width:290px;margin:0 auto;color:var(--muted)}
.service-box-grid p{display:flex;align-items:center;justify-content:center;flex-direction:column;min-height:76px;padding:18px 16px;text-align:center;background:#fff;border:1px solid var(--line);border-left:4px solid var(--orange);border-radius:4px;color:var(--navy);font-weight:800;box-shadow:0 6px 18px rgba(28,27,32,.05);transition:transform .2s ease, box-shadow .2s ease,border-color .2s ease;margin:0}
.service-box-grid p:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(28,27,32,.09);border-color:rgba(185,42,34,.2)}
.service-box-grid p:before{content:"";display:block;width:22px;height:22px;margin:0 auto 10px;background:#b92a22;clip-path:polygon(15% 10%,85% 10%,85% 28%,65% 28%,65% 90%,35% 90%,35% 28%,15% 28%);opacity:.92}
.stats-strip h3{margin:0}.stats-strip h3 strong{display:block;color:var(--navy);font-size:34px;font-family:Arial,Helvetica,sans-serif}.stats-strip p{font-weight:800;color:var(--muted);font-size:13px;text-transform:uppercase;letter-spacing:.06em;margin:0}
.split-image-block{min-height:430px;margin:0;border-radius:5px;position:relative;box-shadow:var(--shadow);overflow:hidden;background:#eee}
.split-image-block img{width:100%;height:530px;object-fit:cover;display:block}.split-image-block figcaption{position:absolute;right:20px;bottom:20px;background:rgba(255,255,255,.94);border-left:5px solid var(--orange);padding:15px 18px;max-width:250px;color:var(--navy);font-weight:800;text-align:left;font-size:15px;display:none !important}
.text-block ul{list-style:none;padding:0;margin:24px 0}.text-block li{padding:12px 0 12px 32px;border-bottom:1px solid #e2e9ed;position:relative;font-weight:700;color:#3a3336}.text-block li:before{content:"";position:absolute;left:0;top:18px;width:15px;height:8px;border-left:3px solid var(--orange);border-bottom:3px solid var(--orange);transform:rotate(-45deg)}
.city-tile.wp-block-group{background:#fff;border:1px solid var(--line);border-left:4px solid var(--orange);padding:16px;border-radius:4px;box-shadow:0 8px 18px rgba(27,26,32,.05)}
.city-tile h3{font-size:20px;margin:0 0 6px}.city-tile h3 a{color:var(--navy);text-decoration:none}.city-tile p{color:var(--muted);font-weight:700;margin:0}
.case-strip article.wp-block-group{background:#fff;border:1px solid var(--line);border-left:4px solid var(--orange);padding:20px;border-radius:4px}.case-strip article h3{font-size:18px;margin:0 0 8px;color:var(--navy)}.case-strip article p{color:var(--muted);font-weight:700;margin:0}
.cta-panel.wp-block-group{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:5px;padding:34px;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center}.cta-panel p{color:var(--muted);margin:0}.cta-panel .kicker{margin-bottom:12px}.cta-panel .wp-block-buttons{justify-content:flex-start}
.auth-tabs{display:flex;border-bottom:1px solid var(--line);margin-bottom:20px}.auth-tabs a{padding:12px 18px;font-weight:800;color:var(--navy);border-bottom:3px solid transparent}.auth-tabs a.active{color:var(--orange);border-color:var(--orange)}.auth-message{padding:12px 14px;margin-bottom:16px;border-radius:4px;font-weight:700}.auth-message.success{background:#edf8f1;color:#24683b;border:1px solid #bee4c8}.auth-message.error{background:#fff0ef;color:#8f1f19;border:1px solid #f0cbc8}.login-form .form-row{margin-bottom:14px}.login-form label{display:block;font-weight:800;color:var(--navy);margin-bottom:6px}.login-form input{width:100%;border:1px solid var(--line);padding:12px;background:#fff}
@media(max-width:1100px){.cta-panel.wp-block-group{grid-template-columns:1fr}.service-box-grid.wp-block-group{grid-template-columns:repeat(2,minmax(0,1fr))}.split-image-block,.split-image-block img{height:auto;min-height:280px}.split-image-block img{height:320px}}
@media(max-width:720px){.hero-cover.hero-image{height:380px;min-height:380px!important}.hero-badge{left:22px;right:22px;bottom:38px;max-width:none}.hero-badge .hero-title,.hero-badge h2{font-size:23px}.service-box-grid.wp-block-group,.icon-grid.wp-block-group,.city-grid-nine.wp-block-group{grid-template-columns:1fr}.cta-panel.wp-block-group{padding:24px}.intro .hero-actions .wp-block-buttons{justify-content:flex-start}.split-image-block img{height:260px}.wp-block-group.container{padding-left:18px;padding-right:18px}}


/* 2026-07-06 icon fix: replace problematic pseudo/data-uri icons with local SVG assets */
.line-icon,
.line-icon.wp-block-group,
.line-icon.has-global-padding,
.line-icon.has-global-padding.wp-block-group{
  font-size:0 !important;
  line-height:0 !important;
  color:transparent !important;
  text-indent:-9999px !important;
  overflow:hidden !important;
  display:block !important;
  width:58px !important;
  height:58px !important;
  min-width:58px !important;
  min-height:58px !important;
  margin:0 auto 18px !important;
  border-radius:50% !important;
  border:1px solid rgba(185,42,34,.22) !important;
  background-color:#fff7f6 !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
  background-size:28px 28px !important;
  box-shadow:inset 0 0 0 7px rgba(185,42,34,.045) !important;
}
.line-icon::before,
.line-icon::after,
.icon-card .line-icon::before,
.icon-card .line-icon::after{content:none !important;display:none !important}
.icon-globe{background-image:url('../images/icons/icon-globe.svg') !important}
.icon-headset{background-image:url('../images/icons/icon-headset.svg') !important}
.icon-route{background-image:url('../images/icons/icon-route.svg') !important}
.icon-clock{background-image:url('../images/icons/icon-clock.svg') !important}
.icon-network{background-image:url('../images/icons/icon-network.svg') !important}
.icon-briefcase{background-image:url('../images/icons/icon-briefcase.svg') !important}
.icon-bolt{background-image:url('../images/icons/icon-bolt.svg') !important}
.icon-compass{background-image:url('../images/icons/icon-compass.svg') !important}
.icon-pencil{background-image:url('../images/icons/icon-pencil.svg') !important}
.icon-tag{background-image:url('../images/icons/icon-tag.svg') !important}

/* service overview icons */
.service-box-grid p{position:relative}
.service-box-grid p::before,
.service-box-grid span::before{
  content:"" !important;
  display:block !important;
  width:24px !important;
  height:24px !important;
  margin:0 auto 10px !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
  background-size:24px 24px !important;
  border:0 !important;
  border-radius:0 !important;
  background-color:transparent !important;
}
.service-box-grid p::after,
.service-box-grid span::after{content:none !important;display:none !important}
.service-box-grid p:nth-child(1)::before,.service-box-grid span:nth-child(1)::before{background-image:url('../images/icons/icon-fit.svg') !important}
.service-box-grid p:nth-child(2)::before,.service-box-grid span:nth-child(2)::before{background-image:url('../images/icons/icon-group.svg') !important}
.service-box-grid p:nth-child(3)::before,.service-box-grid span:nth-child(3)::before{background-image:url('../images/icons/icon-mice.svg') !important}
.service-box-grid p:nth-child(4)::before,.service-box-grid span:nth-child(4)::before{background-image:url('../images/icons/icon-edu.svg') !important}
.service-box-grid p:nth-child(5)::before,.service-box-grid span:nth-child(5)::before{background-image:url('../images/icons/icon-luxury.svg') !important}
.service-box-grid p:nth-child(6)::before,.service-box-grid span:nth-child(6)::before{background-image:url('../images/icons/icon-transfer.svg') !important}
.service-box-grid p:nth-child(7)::before,.service-box-grid span:nth-child(7)::before{background-image:url('../images/icons/icon-hotel.svg') !important}

/* =========================================================
   2.1 Portal, native menu, CF7, and search refinements
========================================================= */
.main-nav{display:flex;align-items:center;justify-content:center;flex:1;min-width:0}
.main-nav .main-menu{display:flex;align-items:center;justify-content:center;gap:2px;margin:0;padding:0;list-style:none}
.main-nav .main-menu>li{position:relative;margin:0;padding:0;list-style:none}
.main-nav .main-menu a{display:flex;align-items:center;min-height:76px;padding:0 14px;color:#2b2830;font-size:15px;font-weight:700;white-space:nowrap;position:relative;text-decoration:none}
.main-nav .main-menu>li>a:after{content:"";position:absolute;left:14px;right:14px;bottom:18px;height:3px;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:.2s}
.main-nav .main-menu>li:hover>a:after,.main-nav .main-menu>.current-menu-item>a:after,.main-nav .main-menu>.current-menu-ancestor>a:after{transform:scaleX(1)}
.main-nav .sub-menu{position:absolute;top:100%;left:0;z-index:100;background:#fff;border:1px solid var(--line);box-shadow:0 18px 38px rgba(28,27,32,.14);min-width:230px;margin:0;padding:8px 0;list-style:none;opacity:0;visibility:hidden;transform:translateY(8px);transition:.18s ease;border-top:3px solid var(--orange)}
.main-nav li:hover>.sub-menu{opacity:1;visibility:visible;transform:translateY(0)}
.main-nav .sub-menu li{position:relative;list-style:none;margin:0}.main-nav .sub-menu a{min-height:auto;padding:11px 16px;color:#3a3336;font-size:14px;line-height:1.35}.main-nav .sub-menu a:hover{background:#fff7f6;color:var(--orange)}
.main-nav .sub-menu .sub-menu{left:100%;top:-11px}
.header-actions .btn-ghost{display:inline-flex}

/* functional search */
.redgate-search-panel.search-panel{grid-template-columns:1.2fr 1fr 1fr auto}
.search-results-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin:0 auto 28px;max-width:1120px;border-bottom:1px solid var(--line);padding-bottom:18px}.search-results-head h2{margin:0 0 6px}.search-results-head p{margin:0;color:var(--muted)}
.empty-results{grid-column:1/-1;background:#fff;border:1px solid var(--line);padding:36px;text-align:center;border-left:4px solid var(--orange);box-shadow:0 12px 26px rgba(28,27,32,.06)}.empty-results h3{margin-bottom:10px}.empty-results p{color:var(--muted)}
.packages-search-section{padding-bottom:20px!important}.packages-search-section .search-panel{margin-top:12px;box-shadow:0 12px 28px rgba(28,27,32,.08)}

/* CF7 integration */
.redgate-cf7-form{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px;padding:30px;max-width:980px;margin:0 auto}.redgate-cf7-form form{margin:0}.redgate-cf7-form p{margin:0 0 14px;color:var(--muted)}.redgate-cf7-form label{display:block;font-weight:800;color:var(--navy);font-size:13px;margin-bottom:7px}.redgate-cf7-form input,.redgate-cf7-form select,.redgate-cf7-form textarea{width:100%;border:1px solid var(--line);border-radius:4px;padding:12px 13px;background:#fff;color:var(--ink);outline:none}.redgate-cf7-form textarea{min-height:130px}.redgate-cf7-form input:focus,.redgate-cf7-form select:focus,.redgate-cf7-form textarea:focus{border-color:var(--orange);box-shadow:0 0 0 3px rgba(185,42,34,.1)}.redgate-cf7-form input[type="submit"],.redgate-cf7-form button{display:inline-flex;width:auto;background:var(--orange);color:#fff;border:0;border-radius:4px;padding:13px 22px;font-weight:800;cursor:pointer}.cf7-prefill-note{background:#fff7f6;border-left:4px solid var(--orange);padding:12px 14px;margin-bottom:18px;color:#3a3336}.cf7-setup-card{text-align:left;max-width:900px;margin:0 auto}.cf7-setup-card .demo-code{display:block;margin-top:12px}

/* Premium Partner Login / Registration */
.partner-auth-page{position:relative;overflow:hidden;background:linear-gradient(135deg,#17161b 0%,#252228 46%,#f9f3f2 46%,#fff 100%);padding:72px 0}.partner-auth-page:before{content:"";position:absolute;left:0;top:0;bottom:0;width:50%;background:url('../images/login.png') center/cover no-repeat;opacity:.16}.partner-auth-grid{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 480px;gap:54px;align-items:center}.partner-auth-copy{color:#fff;padding:40px 0}.partner-auth-copy h1{font-size:48px;max-width:620px;margin:0 0 18px;color:#fff}.partner-auth-copy p{max-width:560px;color:#e8dddd;font-size:17px}.partner-auth-copy .kicker{color:#fff}.partner-auth-copy .kicker:before,.partner-auth-copy .kicker:after{background:#fff}.auth-feature-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:28px;max-width:560px}.auth-feature-list span{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);padding:13px 14px;border-radius:6px;color:#fff;font-weight:800}.auth-help-card{margin-top:24px;max-width:560px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);border-left:4px solid var(--orange);padding:18px;border-radius:8px}.auth-help-card strong{display:block;color:#fff;margin-bottom:4px}.auth-help-card p{margin:0;font-size:15px}.partner-auth-panel{background:#fff;border:1px solid rgba(185,42,34,.16);border-radius:12px;box-shadow:0 28px 70px rgba(28,27,32,.22);padding:24px}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;background:#f6f4f4;padding:6px;border-radius:8px;margin-bottom:18px}.auth-tabs a{display:flex;align-items:center;justify-content:center;padding:12px;border-radius:6px;font-weight:900;color:#3a3336}.auth-tabs a.active{background:#fff;color:var(--orange);box-shadow:0 8px 20px rgba(28,27,32,.08)}.login-card{background:#fff;border:0;box-shadow:none;padding:10px 4px 0}.auth-card-head span{display:block;text-transform:uppercase;letter-spacing:.12em;color:var(--orange);font-weight:900;font-size:12px;margin-bottom:8px}.auth-card-head h2{font-size:30px;margin:0 0 6px}.auth-card-head p{margin:0 0 20px;color:var(--muted)}.modern-auth-form,.login-form,#redgate-partner-loginform{display:grid;gap:14px}.form-row{display:grid;gap:7px}.form-row.two{grid-template-columns:1fr 1fr;gap:12px}.login-form label,#redgate-partner-loginform label{font-size:13px;font-weight:900;color:var(--navy)}.login-form input,#redgate-partner-loginform input[type="text"],#redgate-partner-loginform input[type="password"]{width:100%;border:1px solid var(--line);border-radius:5px;background:#fff;padding:13px 14px;outline:none}.login-form input:focus,#redgate-partner-loginform input:focus{border-color:var(--orange);box-shadow:0 0 0 3px rgba(185,42,34,.1)}#redgate-partner-loginform .login-remember label{display:flex;align-items:center;gap:8px;color:var(--muted)}#redgate-partner-loginform .login-submit .button{background:var(--orange);color:#fff;border:0;border-radius:4px;padding:13px 22px;font-weight:900;cursor:pointer;width:100%}.auth-message{border-radius:6px;padding:12px 14px;margin-bottom:16px;font-weight:800}.auth-message.success{background:#edf8f1;color:#21643a;border-left:4px solid #39a869}.auth-message.error{background:#fff1ef;color:#9b261f;border-left:4px solid var(--orange)}.partner-auth-visual{display:grid;place-items:center;min-height:300px}.auth-glass-card{background:rgba(255,255,255,.9);border-left:5px solid var(--orange);box-shadow:0 18px 50px rgba(0,0,0,.18);padding:28px;border-radius:10px;color:var(--navy)}.auth-glass-card strong{display:block;font-size:26px;letter-spacing:.04em}.auth-glass-card span{display:block;color:var(--muted);font-weight:800;margin-top:4px}

/* Partner dashboard */
.partner-dashboard{background:#f6f4f4;padding:58px 0 72px}.dashboard-hero{background:linear-gradient(135deg,#1c1b20,#2a2830);color:#fff;border-radius:14px;padding:36px;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;box-shadow:0 22px 50px rgba(28,27,32,.18);position:relative;overflow:hidden}.dashboard-hero:after{content:"";position:absolute;right:-80px;top:-120px;width:320px;height:320px;border-radius:50%;background:rgba(185,42,34,.25)}.dashboard-hero>*{position:relative}.dashboard-hero h1{color:#fff;font-size:42px;margin:0 0 10px;max-width:800px}.dashboard-hero p{color:#eadfdd;margin:0;max-width:720px}.dashboard-hero .kicker{color:#fff}.dashboard-hero .kicker:before,.dashboard-hero .kicker:after{background:#fff}.dashboard-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}.dashboard-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:22px 0}.dashboard-stat-grid article{background:#fff;border:1px solid var(--line);border-radius:10px;padding:22px;box-shadow:0 10px 24px rgba(28,27,32,.06)}.dashboard-stat-grid strong{display:block;color:var(--navy);font-size:34px;line-height:1}.dashboard-stat-grid span{display:block;color:var(--muted);font-weight:900;text-transform:uppercase;font-size:12px;letter-spacing:.07em;margin-top:8px}.dashboard-layout{display:grid;grid-template-columns:280px 1fr;gap:22px;align-items:start}.dashboard-sidebar{display:grid;gap:18px;position:sticky;top:110px}.sidebar-card,.dashboard-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:24px;box-shadow:0 12px 28px rgba(28,27,32,.07)}.sidebar-card h3{margin:0 0 14px;font-size:22px}.sidebar-card>a:not(.btn){display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line);font-weight:800;color:#3a3336}.sidebar-card>a:not(.btn):after{content:"→";color:var(--orange)}.sidebar-card>a:not(.btn):last-child{border-bottom:0}.muted-card{background:#fbfafa}.muted-card p{color:var(--muted);word-break:break-word}.dashboard-main{display:grid;gap:22px}.drive-card,.dashboard-card-head{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center}.dashboard-card h2{margin:0 0 8px}.dashboard-card p{color:var(--muted);margin:0}.portal-locked{background:#f6f4f4;padding:70px 0}.portal-locked-card{background:#fff;border:1px solid var(--line);border-left:5px solid var(--orange);box-shadow:var(--shadow);border-radius:10px;padding:34px;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center}

@media(max-width:1180px){.main-nav .main-menu a{padding-left:9px;padding-right:9px;font-size:14px}.logo{min-width:240px}.dashboard-layout{grid-template-columns:240px 1fr}.partner-auth-grid{grid-template-columns:1fr 440px;gap:32px}}
@media(max-width:980px){.mobile-toggle{display:flex}.main-nav{position:absolute;left:0;right:0;top:76px;background:#fff;border-top:1px solid var(--line);box-shadow:0 18px 34px rgba(28,27,32,.1);display:none;padding:12px 22px}.main-nav.open{display:block}.main-nav .main-menu{display:block}.main-nav .main-menu a{min-height:auto;padding:14px 4px;border-bottom:1px solid var(--line)}.main-nav .main-menu>li>a:after{display:none}.main-nav .sub-menu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;border-left:3px solid var(--orange);padding:0 0 0 14px;margin:0 0 6px;background:#fff}.main-nav .sub-menu a{padding:10px 4px}.header-actions .btn-ghost{display:none}.partner-auth-page{background:#1c1b20;padding:54px 0}.partner-auth-page:before{width:100%;opacity:.1}.partner-auth-grid{grid-template-columns:1fr}.partner-auth-copy{padding:0}.partner-auth-copy h1{font-size:38px}.partner-auth-panel{max-width:560px;width:100%;margin:0 auto}.dashboard-hero,.dashboard-layout,.drive-card,.dashboard-card-head,.portal-locked-card{grid-template-columns:1fr}.dashboard-actions{justify-content:flex-start}.dashboard-sidebar{position:static;grid-template-columns:1fr 1fr}.dashboard-stat-grid{grid-template-columns:repeat(2,1fr)}.redgate-search-panel.search-panel{grid-template-columns:1fr 1fr}.redgate-search-panel .btn{grid-column:1/-1;height:54px}}
@media(max-width:720px){.partner-auth-copy h1,.dashboard-hero h1{font-size:32px}.auth-feature-list,.dashboard-sidebar,.dashboard-stat-grid,.form-row.two,.redgate-search-panel.search-panel{grid-template-columns:1fr}.partner-auth-panel,.login-card,.dashboard-hero,.sidebar-card,.dashboard-card,.portal-locked-card,.redgate-cf7-form{padding:22px}.partner-dashboard{padding:36px 0}.utility-left{display:none}.header-inner{height:72px}.main-nav{top:72px}.logo img{height:44px}.search-results-head{display:block}.search-results-head .btn{margin-top:14px}}


/* =========================================================
   2026-07-06 layout width, header/menu, pagination, CF7 fixes
========================================================= */
:root{--content:1600px!important;}
.container,.wp-block-group.container{max-width:1600px!important;width:100%;margin-left:auto!important;margin-right:auto!important;padding-left:40px!important;padding-right:40px!important;}
.section,.section-alt,.section-stone,.wp-block-group.section,.wp-block-group.section-alt,.wp-block-group.section-stone{padding-top:78px!important;padding-bottom:78px!important;}
.section-head{max-width:980px!important;margin-bottom:42px!important;}
.icon-grid,.program-row,.region-grid,.case-strip,.browse-grid,.duration-grid,.values-grid,.map-grid.city-grid-nine{gap:28px!important;}
.program-row-four{grid-template-columns:repeat(auto-fit,minmax(370px,1fr))!important;}
.program-card,.region-card,.city-tile,.dashboard-card,.sidebar-card,.icon-card{border-radius:8px!important;}
.site-header{z-index:999!important;}
.header-inner{height:auto!important;min-height:84px!important;display:flex!important;align-items:center!important;gap:24px!important;position:relative;}
.logo{flex:0 0 270px!important;min-width:0!important;max-width:270px!important;}
.logo img,.custom-logo-link img{height:58px!important;width:auto!important;max-width:270px!important;object-fit:contain;}
.main-nav{flex:1 1 auto!important;min-width:0!important;display:flex!important;justify-content:center!important;align-items:center!important;}
.main-nav .main-menu{display:flex!important;align-items:center!important;justify-content:center!important;gap:0 2px!important;flex-wrap:wrap!important;min-width:0!important;}
.main-nav .main-menu>li{flex:0 0 auto!important;}
.main-nav .main-menu a{min-height:84px!important;padding-left:12px!important;padding-right:12px!important;font-size:15px!important;line-height:1.2!important;}
.header-actions{flex:0 0 auto!important;display:flex!important;align-items:center!important;gap:10px!important;white-space:nowrap!important;}
.header-actions .btn{padding:12px 16px!important;font-size:14px!important;}
.mobile-toggle{flex:0 0 44px!important;}
.submenu-toggle{display:none;}
.hero-badge{left:max(40px,calc((100% - 1600px)/2 + 40px))!important;}
.search-shell{max-width:1600px!important;}
.redgate-search-panel.search-panel{grid-template-columns:1.25fr 1fr 1fr auto!important;}
.search-field{min-width:0!important;}
.search-field select,.search-field input{min-width:0!important;}

/* CF7 generated forms */
.redgate-cf7-form{max-width:1120px!important;border-radius:10px!important;padding:34px!important;}
.redgate-cf7-form .rg-form-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px 18px!important;margin-bottom:14px!important;}
.redgate-cf7-form .rg-form-grid label{margin:0!important;}
.redgate-cf7-form .wpcf7-submit{min-width:180px!important;}
.cf7-prefill-note{border-radius:6px!important;}

/* Package pagination */
.redgate-pagination{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;margin:34px auto 0;}
.redgate-pagination .page-link{min-width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:4px;background:#fff;color:var(--navy);font-weight:900;padding:0 14px;text-decoration:none;box-shadow:0 6px 16px rgba(28,27,32,.05);}
.redgate-pagination .page-link:hover,.redgate-pagination .page-link.current{background:var(--orange);border-color:var(--orange);color:#fff;}
.redgate-pagination .prev,.redgate-pagination .next{min-width:96px;}

@media(max-width:1500px){
  .logo{flex-basis:240px!important;max-width:240px!important;}
  .logo img,.custom-logo-link img{height:52px!important;max-width:240px!important;}
  .main-nav .main-menu a{padding-left:9px!important;padding-right:9px!important;font-size:14px!important;}
  .header-actions .btn-ghost{display:none!important;}
  .header-actions .btn{padding:11px 14px!important;}
}
@media(max-width:1180px){
  body.redgate-menu-open{overflow:hidden;}
  .container,.wp-block-group.container{padding-left:28px!important;padding-right:28px!important;}
  .header-inner{min-height:76px!important;}
  .logo{flex:1 1 auto!important;max-width:250px!important;}
  .logo img,.custom-logo-link img{height:48px!important;max-width:240px!important;}
  .mobile-toggle{display:flex!important;}
  .header-actions .btn-ghost{display:none!important;}
  .header-actions .btn-primary{display:inline-flex!important;}
  .main-nav{position:fixed!important;left:0!important;right:0!important;top:76px!important;bottom:auto!important;display:none!important;background:#fff!important;border-top:1px solid var(--line)!important;box-shadow:0 18px 40px rgba(28,27,32,.16)!important;padding:10px 28px 22px!important;max-height:calc(100vh - 76px)!important;overflow-y:auto!important;z-index:998!important;}
  .main-nav.open{display:block!important;}
  .main-nav .main-menu{display:block!important;margin:0!important;padding:0!important;}
  .main-nav .main-menu li{position:relative!important;display:block!important;border-bottom:1px solid var(--line)!important;}
  .main-nav .main-menu a{min-height:auto!important;padding:15px 46px 15px 0!important;border-bottom:0!important;font-size:16px!important;display:block!important;}
  .main-nav .main-menu>li>a:after{display:none!important;}
  .submenu-toggle{display:flex!important;position:absolute;right:0;top:6px;width:38px;height:38px;border:1px solid var(--line);background:#fff;border-radius:4px;align-items:center;justify-content:center;color:var(--orange);}
  .submenu-toggle span,.submenu-toggle span:before{content:"";display:block;width:14px;height:2px;background:currentColor;position:absolute;}
  .submenu-toggle span:before{transform:rotate(90deg);}
  .submenu-open>.submenu-toggle span:before{display:none;}
  .main-nav .sub-menu{display:none!important;position:static!important;opacity:1!important;visibility:visible!important;transform:none!important;box-shadow:none!important;border:0!important;border-left:3px solid var(--orange)!important;margin:0 0 12px 0!important;padding:4px 0 4px 16px!important;background:#fff!important;}
  .main-nav li.submenu-open>.sub-menu{display:block!important;}
  .main-nav .sub-menu li{border-bottom:0!important;}
  .main-nav .sub-menu a{font-size:14px!important;padding:10px 0!important;color:#3a3336!important;}
  .redgate-search-panel.search-panel{grid-template-columns:1fr 1fr!important;}
  .redgate-search-panel .btn{grid-column:1/-1!important;height:54px!important;}
  .dashboard-layout{grid-template-columns:1fr!important;}
  .dashboard-sidebar{position:static!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:760px){
  .container,.wp-block-group.container{padding-left:18px!important;padding-right:18px!important;}
  .section,.section-alt,.section-stone,.wp-block-group.section,.wp-block-group.section-alt,.wp-block-group.section-stone{padding-top:52px!important;padding-bottom:52px!important;}
  .header-inner{min-height:70px!important;gap:10px!important;}
  .main-nav{top:70px!important;max-height:calc(100vh - 70px)!important;padding-left:18px!important;padding-right:18px!important;}
  .logo img,.custom-logo-link img{height:42px!important;max-width:205px!important;}
  .header-actions{gap:8px!important;}
  .header-actions .btn-primary{display:none!important;}
  .mobile-toggle{width:42px!important;height:40px!important;}
  .hero-badge{left:18px!important;right:18px!important;}
  .redgate-search-panel.search-panel{grid-template-columns:1fr!important;}
  .redgate-cf7-form{padding:22px!important;}
  .redgate-cf7-form .rg-form-grid{grid-template-columns:1fr!important;}
  .dashboard-sidebar,.dashboard-stat-grid{grid-template-columns:1fr!important;}
  .redgate-pagination .page-link{min-width:38px;height:38px;padding:0 11px;}
}


/* =========================================================
   2026-07-06 guide page, form polish, consistent 1600 width, readable process
========================================================= */
:root{--content:1600px!important;}
.container,
.wp-block-group.container,
.section > .container,
.section-alt > .container,
.section-stone > .container,
.section .wp-block-group.container,
.section-alt .wp-block-group.container,
.section-stone .wp-block-group.container{
  max-width:1600px!important;
  width:100%!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.icon-grid,
.icon-grid.wp-block-group,
.stats-strip,
.stats-strip.wp-block-group,
.program-row,
.program-row.wp-block-group,
.case-strip,
.case-strip.wp-block-group,
.city-grid-nine,
.city-grid-nine.wp-block-group,
.service-box-grid,
.service-box-grid.wp-block-group,
.timeline,
.timeline.wp-block-group{
  max-width:none!important;
  width:100%!important;
}
.section-head{max-width:100%!important;width:100%!important;}
.section-head p{max-width:820px;margin-left:auto;margin-right:auto;}
.icon-grid,.icon-grid.wp-block-group{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:28px!important;}
.stats-strip,.stats-strip.wp-block-group{grid-template-columns:repeat(4,minmax(0,1fr))!important;}

/* Better How It Works reading layout */
.timeline,.timeline.wp-block-group{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:18px!important;
  margin:0!important;
  position:relative!important;
}
.timeline:before{display:none!important;}
.step,.step.wp-block-group{
  position:relative!important;
  padding:28px 22px 24px!important;
  margin:0!important;
  min-height:190px!important;
  background:#fff!important;
  border:1px solid var(--line)!important;
  border-radius:10px!important;
  box-shadow:0 10px 24px rgba(28,27,32,.06)!important;
  overflow:hidden!important;
}
.step:before{
  content:"";
  position:absolute;
  left:0;right:0;top:0;height:3px;
  background:linear-gradient(90deg,var(--orange),rgba(185,42,34,0));
}
.step-num{
  position:static!important;
  width:46px!important;
  height:46px!important;
  margin:0 0 18px!important;
  border-radius:50%!important;
  background:#fff7f6!important;
  border:1px solid rgba(185,42,34,.22)!important;
  color:var(--orange)!important;
  box-shadow:inset 0 0 0 6px rgba(185,42,34,.05)!important;
  font-size:18px!important;
}
.step h3{font-size:21px!important;line-height:1.2!important;margin:0 0 9px!important;}
.step p{font-size:15px!important;line-height:1.55!important;color:var(--muted)!important;margin:0!important;}
.step:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(28,27,32,.1)!important;transition:.2s ease;}

/* China Travel Guide improved page modules */
.guide-intro .lead{max-width:900px!important;}
.guide-overview{
  display:grid!important;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)!important;
  gap:32px!important;
  align-items:stretch!important;
}
.guide-overview-main{
  background:#1c1b20!important;
  color:#fff!important;
  border-radius:12px!important;
  padding:38px!important;
  box-shadow:0 18px 42px rgba(28,27,32,.12)!important;
}
.guide-overview-main h2{color:#fff!important;font-size:36px!important;margin:0 0 14px!important;}
.guide-overview-main p{color:#eadfdd!important;font-size:17px!important;margin:0!important;}
.guide-overview-main .kicker{color:#fff!important;}
.guide-overview-main .kicker:before,.guide-overview-main .kicker:after{background:#fff!important;}
.guide-quick-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px!important;
}
.guide-quick-card,
.guide-topic-card,
.guide-resource-card{
  background:#fff!important;
  border:1px solid var(--line)!important;
  border-radius:10px!important;
  padding:24px!important;
  box-shadow:0 10px 24px rgba(28,27,32,.06)!important;
}
.guide-quick-card{display:flex!important;flex-direction:column!important;justify-content:center!important;min-height:180px!important;border-left:4px solid var(--orange)!important;}
.guide-quick-card h3,.guide-topic-card h3,.guide-resource-card h3{font-size:21px!important;margin:0 0 10px!important;}
.guide-quick-card p,.guide-topic-card p,.guide-resource-card p{margin:0!important;color:var(--muted)!important;line-height:1.55!important;}
.guide-download-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(420px,.72fr)!important;
  gap:30px!important;
  align-items:start!important;
}
.guide-resource-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px!important;
}
.guide-resource-card{min-height:170px!important;position:relative!important;overflow:hidden!important;}
.guide-resource-card strong{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:42px!important;
  height:42px!important;
  border-radius:50%!important;
  background:#fff7f6!important;
  color:var(--orange)!important;
  border:1px solid rgba(185,42,34,.22)!important;
  margin-bottom:18px!important;
}
.guide-form-panel{
  background:#fff!important;
  border:1px solid rgba(185,42,34,.18)!important;
  border-radius:12px!important;
  padding:30px!important;
  box-shadow:0 18px 42px rgba(28,27,32,.12)!important;
  position:sticky!important;
  top:110px!important;
}
.guide-form-panel h3{font-size:28px!important;margin:0 0 18px!important;}
.guide-form-panel .redgate-cf7-form{box-shadow:none!important;border:0!important;padding:0!important;margin:0!important;background:transparent!important;}
.guide-topic-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:22px!important;
}
.guide-topic-card{border-left:4px solid var(--orange)!important;min-height:176px!important;}
.guide-topic-card span{
  display:inline-flex!important;
  padding:6px 10px!important;
  border-radius:999px!important;
  background:#fff7f6!important;
  color:var(--orange)!important;
  font-size:12px!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
  margin-bottom:14px!important;
}
.guide-cta-panel{border-left:5px solid var(--orange)!important;}

/* Form polish for CF7 and fallback setup */
.redgate-cf7-form{
  width:100%!important;
  max-width:none!important;
  border-radius:12px!important;
  padding:36px!important;
  background:#fff!important;
  border:1px solid rgba(185,42,34,.15)!important;
  box-shadow:0 14px 34px rgba(28,27,32,.08)!important;
}
.redgate-cf7-form .rg-form-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important;}
.redgate-cf7-form label{font-size:13px!important;line-height:1.4!important;color:#2b2830!important;font-weight:900!important;}
.redgate-cf7-form .wpcf7-form-control-wrap{display:block!important;margin-top:7px!important;}
.redgate-cf7-form input,
.redgate-cf7-form select,
.redgate-cf7-form textarea{
  min-height:48px!important;
  border-radius:6px!important;
  border:1px solid #ded6d5!important;
  background:#fff!important;
  transition:border-color .18s ease, box-shadow .18s ease!important;
}
.redgate-cf7-form textarea{min-height:150px!important;resize:vertical!important;}
.redgate-cf7-form input:focus,
.redgate-cf7-form select:focus,
.redgate-cf7-form textarea:focus{border-color:var(--orange)!important;box-shadow:0 0 0 4px rgba(185,42,34,.1)!important;}
.redgate-cf7-form input[type="submit"],
.redgate-cf7-form .wpcf7-submit{
  min-height:50px!important;
  padding:0 26px!important;
  border-radius:5px!important;
  background:var(--orange)!important;
  color:#fff!important;
  font-weight:900!important;
  box-shadow:0 10px 22px rgba(185,42,34,.2)!important;
}
.wpcf7 form .wpcf7-response-output{margin:18px 0 0!important;border-radius:6px!important;padding:12px 14px!important;}
.wpcf7-not-valid-tip{font-size:12px!important;margin-top:6px!important;color:#9b261f!important;}

@media(max-width:1200px){
  .icon-grid,.icon-grid.wp-block-group{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .timeline,.timeline.wp-block-group{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .guide-overview,.guide-download-layout{grid-template-columns:1fr!important;}
  .guide-form-panel{position:static!important;}
  .guide-topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .redgate-cf7-form .rg-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:760px){
  .icon-grid,.icon-grid.wp-block-group,.stats-strip,.stats-strip.wp-block-group,.timeline,.timeline.wp-block-group,.guide-quick-grid,.guide-resource-grid,.guide-topic-grid{grid-template-columns:1fr!important;}
  .guide-overview-main,.guide-form-panel,.guide-quick-card,.guide-topic-card,.guide-resource-card{padding:22px!important;}
  .guide-overview-main h2{font-size:30px!important;}
  .step,.step.wp-block-group{min-height:auto!important;padding:22px!important;display:flex!important;flex-wrap:wrap;grid-template-columns:54px 1fr!important;gap:0 14px!important;align-items:start!important;}
  .step-num{grid-row:1/3!important;margin:0!important;}
  .step h3{margin-top:2px!important;}
  .redgate-cf7-form{padding:22px!important;}
  .redgate-cf7-form .rg-form-grid{grid-template-columns:1fr!important;}
}


/* =========================================================
   RedGate DMC complete form redesign
   Applies to CF7, partner login/register, search and setup states.
========================================================= */
:root{
  --rg-form-bg:#ffffff;
  --rg-form-soft:#fff8f7;
  --rg-form-border:#eadedc;
  --rg-form-focus:#b92a22;
  --rg-form-shadow:0 18px 42px rgba(28,27,32,.10);
}
.rg-form-shell,
.redgate-cf7-form,
.partner-auth-panel,
.login-card,
.cf7-setup-card{
  box-sizing:border-box;
}
.rg-form-shell{
  max-width:1180px;
  margin:0 auto;
  background:linear-gradient(180deg,#fff,#fffaf9);
  border:1px solid var(--rg-form-border);
  border-radius:14px;
  padding:34px;
  box-shadow:var(--rg-form-shadow);
  position:relative;
  overflow:hidden;
}
.rg-form-shell:before{
  content:"";
  position:absolute;
  left:0;right:0;top:0;
  height:4px;
  background:linear-gradient(90deg,#1c1b20,#b92a22,#1c1b20);
}
.rg-form-shell-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(260px,420px);
  gap:24px;
  align-items:end;
  margin-bottom:24px;
  padding-bottom:20px;
  border-bottom:1px solid var(--rg-form-border);
}
.rg-form-shell-head h3{
  font-size:30px;
  margin:4px 0 0;
  color:var(--navy);
}
.rg-form-shell-head p{
  color:var(--muted);
  margin:0;
  font-size:15px;
  line-height:1.6;
}
.rg-form-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:var(--orange);
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:12px;
  font-weight:900;
}
.rg-form-eyebrow:before{
  content:"";
  width:28px;
  height:1px;
  background:var(--orange);
}
.rg-cf7-card{
  display:block;
}
.rg-cf7-section{
  background:#fff;
  border:1px solid #f0e6e4;
  border-radius:12px;
  padding:24px;
}
.rg-form-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px 20px;
}
.rg-field,
.rg-submit,
.rg-form-note{
  margin:0!important;
}
.rg-field-full{
  grid-column:1/-1;
}
.rg-field label{
  display:block;
  color:#322d31;
  font-size:14px;
  font-weight:800;
}
.rg-field label > span:first-child{
  display:block;
  margin-bottom:8px;
  color:#322d31;
}
.rg-field input,
.rg-field select,
.rg-field textarea,
.rg-input,
.rg-select,
.rg-textarea,
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="url"],
.wpcf7-form input[type="tel"],
.wpcf7-form input[type="number"],
.wpcf7-form input[type="date"],
.wpcf7-form select,
.wpcf7-form textarea,
.modern-auth-form input,
#redgate-partner-loginform input[type="text"],
#redgate-partner-loginform input[type="password"],
#redgate-partner-loginform input[type="email"]{
  width:100%;
  min-height:50px;
  border:1px solid #ded3d1;
  border-radius:9px;
  background:#fff;
  color:#211f23;
  padding:13px 15px;
  outline:none;
  transition:border-color .18s ease, box-shadow .18s ease, background .18s ease;
  font-size:15px;
  line-height:1.35;
}
.rg-field textarea,
.rg-textarea,
.wpcf7-form textarea{
  min-height:136px;
  resize:vertical;
}
.rg-field input:focus,
.rg-field select:focus,
.rg-field textarea:focus,
.wpcf7-form input:focus,
.wpcf7-form select:focus,
.wpcf7-form textarea:focus,
.modern-auth-form input:focus,
#redgate-partner-loginform input:focus{
  border-color:rgba(185,42,34,.72);
  box-shadow:0 0 0 4px rgba(185,42,34,.10);
  background:#fffdfc;
}
.wpcf7-form input::placeholder,
.wpcf7-form textarea::placeholder,
.modern-auth-form input::placeholder{
  color:#aaa0a0;
}
.rg-form-note{
  margin:18px 0 0!important;
  color:#736b70;
  font-size:14px;
  line-height:1.6;
  background:#fff8f7;
  border:1px solid #f0dfdc;
  border-left:4px solid var(--orange);
  border-radius:9px;
  padding:13px 15px;
}
.rg-submit{
  margin-top:20px!important;
  display:flex;
  align-items:center;
  gap:12px;
}
.rg-submit .wpcf7-spinner{
  margin:0;
}
.rg-submit input[type="submit"],
.rg-submit-btn,
.wpcf7-form .wpcf7-submit,
.modern-auth-form .btn,
#redgate-partner-loginform .login-submit input,
.search-panel .btn,
.redgate-search-panel .btn{
  appearance:none;
  border:0;
  min-height:52px;
  border-radius:9px;
  background:var(--orange);
  color:#fff;
  font-weight:900;
  padding:14px 24px;
  cursor:pointer;
  line-height:1;
  box-shadow:0 12px 26px rgba(185,42,34,.20);
  transition:transform .18s ease, background .18s ease, box-shadow .18s ease;
}
.rg-submit input[type="submit"]:hover,
.rg-submit-btn:hover,
.wpcf7-form .wpcf7-submit:hover,
.modern-auth-form .btn:hover,
#redgate-partner-loginform .login-submit input:hover,
.search-panel .btn:hover,
.redgate-search-panel .btn:hover{
  background:var(--orange-dark);
  transform:translateY(-1px);
  box-shadow:0 16px 32px rgba(185,42,34,.26);
}
.cf7-prefill-note{
  display:flex;
  align-items:center;
  gap:8px;
  margin:0 0 18px;
  padding:13px 15px;
  border-radius:9px;
  border:1px solid #efd9d6;
  background:#fff7f6;
  color:#332b2d;
  font-size:14px;
}
.wpcf7-not-valid-tip{
  margin-top:6px;
  color:#b92a22;
  font-size:13px;
  font-weight:700;
}
.wpcf7 form .wpcf7-response-output{
  margin:18px 0 0;
  padding:13px 15px;
  border-radius:9px;
  border-width:1px;
  font-size:14px;
  font-weight:700;
}
.wpcf7 form.sent .wpcf7-response-output{
  border-color:#9fbe9f;
  background:#f2faf2;
  color:#2c6b2c;
}
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output{
  border-color:#e2b2ac;
  background:#fff7f6;
  color:#9b261f;
}

/* Partner native login/register forms */
.partner-auth-panel{
  background:#fff;
  border:1px solid var(--rg-form-border);
  border-radius:16px;
  padding:22px;
  box-shadow:var(--rg-form-shadow);
}
.auth-tabs{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:8px;
  background:#f7f2f1;
  padding:6px;
  border-radius:12px;
  margin-bottom:18px;
}
.auth-tabs a{
  display:flex;
  justify-content:center;
  align-items:center;
  min-height:44px;
  border-radius:9px;
  font-weight:900;
  color:#463d40;
}
.auth-tabs a.active{
  background:#fff;
  color:var(--orange);
  box-shadow:0 8px 18px rgba(28,27,32,.08);
}
.login-card{
  border:0!important;
  box-shadow:none!important;
  padding:6px!important;
  background:transparent!important;
}
.auth-card-head{
  margin-bottom:18px;
}
.auth-card-head span{
  display:block;
  color:var(--orange);
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:12px;
  font-weight:900;
  margin-bottom:6px;
}
.auth-card-head h2{
  font-size:28px;
  margin:0 0 6px;
}
.auth-card-head p,
.demo-code{
  color:var(--muted);
}
.modern-auth-form,
#redgate-partner-loginform{
  display:grid;
  gap:16px;
}
.modern-auth-form .form-row{
  margin:0;
}
.modern-auth-form .form-row.two{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.modern-auth-form label,
#redgate-partner-loginform label{
  display:block;
  font-size:14px;
  font-weight:900;
  color:#322d31;
  margin-bottom:8px;
}
#redgate-partner-loginform p{
  margin:0;
}
#redgate-partner-loginform .login-remember label{
  display:flex;
  align-items:center;
  gap:8px;
  margin:0;
  font-weight:700;
  color:var(--muted);
}
#redgate-partner-loginform input[type="checkbox"]{
  width:16px;
  height:16px;
  accent-color:var(--orange);
}
#redgate-partner-loginform .login-submit input{
  width:100%;
}

/* Search / filter form consistency */
.redgate-search-panel,
.search-panel.redgate-search-panel{
  border-radius:14px;
  box-shadow:0 18px 42px rgba(28,27,32,.12);
}
.search-field{
  background:#fff;
}
.search-field label{
  color:#7b6c6b;
}
.search-field select,
.search-field input{
  min-height:36px;
}

/* CF7 setup fallback */
.cf7-setup-card{
  max-width:960px;
  border-radius:14px;
  border:1px solid var(--rg-form-border);
  box-shadow:var(--rg-form-shadow);
}

/* Responsive form rules */
@media(max-width:1024px){
  .rg-form-shell{
    padding:28px;
  }
  .rg-form-shell-head{
    grid-template-columns:1fr;
    gap:10px;
    align-items:start;
  }
  .rg-form-grid{
    gap:16px;
  }
}
@media(max-width:720px){
  .rg-form-shell,
  .partner-auth-panel{
    padding:20px;
    border-radius:12px;
  }
  .rg-cf7-section{
    padding:18px;
    border-radius:10px;
  }
  .rg-form-grid,
  .modern-auth-form .form-row.two{
    grid-template-columns:1fr;
  }
  .rg-form-shell-head h3,
  .auth-card-head h2{
    font-size:24px;
  }
  .rg-submit input[type="submit"],
  .rg-submit-btn,
  .wpcf7-form .wpcf7-submit,
  .modern-auth-form .btn,
  #redgate-partner-loginform .login-submit input{
    width:100%;
  }
  .auth-tabs a{
    min-height:42px;
    font-size:14px;
  }
  .redgate-search-panel,
  .search-panel.redgate-search-panel{
    border-radius:12px;
  }
}


/* =========================================================
   Contact information cards + floating WhatsApp / Email buttons
========================================================= */
.contact-details-section .section-head{max-width:920px;margin-left:auto;margin-right:auto;text-align:center}
.redgate-contact-info-wrap{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr) minmax(260px,.8fr);
  gap:24px;
  align-items:stretch;
  width:100%;
}
.redgate-contact-card{
  background:#fff;
  border:1px solid rgba(185,42,34,.13);
  border-radius:16px;
  padding:28px;
  box-shadow:0 16px 40px rgba(28,27,32,.07);
  position:relative;
  overflow:hidden;
}
.redgate-contact-card:before{
  content:"";
  position:absolute;
  left:0;top:0;bottom:0;
  width:4px;
  background:linear-gradient(180deg,var(--orange),rgba(185,42,34,.2));
}
.contact-card-kicker{
  display:block;
  color:var(--orange);
  font-size:12px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  margin-bottom:8px;
}
.redgate-contact-card h3{font-size:26px;margin:0 0 10px;color:var(--navy)}
.redgate-contact-card p{color:var(--muted);margin:0 0 18px;line-height:1.65}
.contact-line{
  display:grid;
  grid-template-columns:100px 1fr;
  gap:14px;
  align-items:center;
  border-top:1px solid var(--line);
  padding:14px 0;
}
.contact-line strong{color:var(--navy);font-size:13px;text-transform:uppercase;letter-spacing:.08em}
.contact-line a{color:var(--orange);font-weight:900;word-break:break-word}
.contact-actions-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}
.wechat-qr-frame{
  width:100%;
  max-width:280px;
  margin:10px auto 16px;
  padding:12px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:14px;
  box-shadow:inset 0 0 0 6px #faf7f5;
}
.wechat-qr-frame img{display:block;width:100%;height:auto;border-radius:8px}
.redgate-wechat-card{text-align:center}
.redgate-support-card ul{margin:10px 0 0;padding:0;list-style:none;display:grid;gap:12px}
.redgate-support-card li{
  position:relative;
  padding-left:22px;
  color:var(--muted);
  font-weight:700;
  line-height:1.5;
}
.redgate-support-card li:before{
  content:"";
  position:absolute;
  left:0;top:.55em;
  width:8px;height:8px;
  border-radius:50%;
  background:var(--orange);
}
.redgate-floating-contact{
  position:fixed;
  right:22px;
  bottom:24px;
  z-index:9999;
  display:grid;
  gap:10px;
}
.float-btn{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:10px;
  min-width:142px;
  height:50px;
  padding:0 16px 0 10px;
  border-radius:999px;
  color:#fff!important;
  font-weight:900;
  box-shadow:0 14px 30px rgba(0,0,0,.18);
  transform:translateZ(0);
  transition:transform .18s ease, box-shadow .18s ease, opacity .18s ease;
}
.float-btn:hover{transform:translateY(-2px);box-shadow:0 18px 36px rgba(0,0,0,.24);opacity:.96}
.float-whatsapp{background:#25D366}
.float-email{background:var(--orange)}
.float-icon{
  width:32px;height:32px;
  border-radius:50%;
  background:rgba(255,255,255,.22);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:12px;
  line-height:1;
  flex:0 0 32px;
}
.float-text{white-space:nowrap;font-size:14px}
@media(max-width:1100px){
  .redgate-contact-info-wrap{grid-template-columns:1fr 1fr}
  .redgate-contact-card-main{grid-column:1/-1}
}
@media(max-width:720px){
  .redgate-contact-info-wrap{grid-template-columns:1fr;gap:16px}
  .redgate-contact-card{padding:22px;border-radius:13px}
  .contact-line{grid-template-columns:1fr;gap:4px}
  .contact-actions-row .btn{width:100%;justify-content:center}
  .redgate-floating-contact{right:14px;bottom:14px;gap:8px}
  .float-btn{min-width:48px;width:48px;height:48px;padding:0;justify-content:center}
  .float-icon{width:30px;height:30px;flex-basis:30px;background:rgba(255,255,255,.22)}
  .float-text{display:none}
}


/* =========================================================
   2026-07-21: global icon completeness, destination image cards,
   floating-logo-only buttons, and CF7 form rebuild polish
========================================================= */
:root{--content:1600px;--rg-wide:1600px;}
.container,.wp-block-group.container{max-width:var(--rg-wide)!important;width:100%;}

/* Always render icons as complete SVG artwork, never as text glyphs or clipped shapes. */
.line-icon,.line-icon.wp-block-group{
  width:64px!important;height:64px!important;min-width:64px!important;min-height:64px!important;
  margin:0 auto 18px!important;border-radius:999px!important;
  background-color:#fff7f6!important;background-repeat:no-repeat!important;background-position:center!important;background-size:34px 34px!important;
  border:1px solid rgba(185,42,34,.22)!important;box-shadow:inset 0 0 0 7px rgba(185,42,34,.045)!important;
  font-size:0!important;color:transparent!important;line-height:0!important;text-indent:-9999px!important;overflow:hidden!important;
}
.line-icon:before,.line-icon:after,.icon-card .line-icon:before,.icon-card .line-icon:after{content:none!important;display:none!important;}
.icon-globe{background-image:url('../images/icons/icon-globe.svg')!important}.icon-headset{background-image:url('../images/icons/icon-headset.svg')!important}.icon-route{background-image:url('../images/icons/icon-route.svg')!important}.icon-clock{background-image:url('../images/icons/icon-clock.svg')!important}.icon-network{background-image:url('../images/icons/icon-network.svg')!important}.icon-briefcase{background-image:url('../images/icons/icon-briefcase.svg')!important}.icon-bolt{background-image:url('../images/icons/icon-bolt.svg')!important}.icon-compass{background-image:url('../images/icons/icon-compass.svg')!important}.icon-pencil{background-image:url('../images/icons/icon-pencil.svg')!important}.icon-tag{background-image:url('../images/icons/icon-tag.svg')!important}

/* Service / guide / arrange icon cards: larger, centered, complete icons. */
.service-box-grid,.service-box-grid.wp-block-group{grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:20px!important;max-width:none!important;width:100%!important;}
.service-box-grid p,.service-box-grid span{
  min-height:118px!important;padding:24px 18px 22px!important;display:flex!important;align-items:center!important;justify-content:center!important;flex-direction:column!important;
  gap:10px!important;text-align:center!important;line-height:1.28!important;border-radius:12px!important;border:1px solid rgba(185,42,34,.13)!important;border-left:0!important;background:#fff!important;
  box-shadow:0 12px 30px rgba(28,27,32,.07)!important;position:relative!important;overflow:visible!important;
}
.service-box-grid p:before,.service-box-grid span:before{
  content:""!important;display:block!important;width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;margin:0 auto 2px!important;
  background-color:#fff7f6!important;background-position:center!important;background-repeat:no-repeat!important;background-size:26px 26px!important;
  border:1px solid rgba(185,42,34,.18)!important;border-radius:999px!important;box-shadow:none!important;clip-path:none!important;opacity:1!important;
}
.service-box-grid p:after,.service-box-grid span:after{content:none!important;display:none!important;}
.service-box-grid p:nth-child(1):before,.service-box-grid span:nth-child(1):before{background-image:url('../images/icons/icon-fit.svg')!important}
.service-box-grid p:nth-child(2):before,.service-box-grid span:nth-child(2):before{background-image:url('../images/icons/icon-group.svg')!important}
.service-box-grid p:nth-child(3):before,.service-box-grid span:nth-child(3):before{background-image:url('../images/icons/icon-mice.svg')!important}
.service-box-grid p:nth-child(4):before,.service-box-grid span:nth-child(4):before{background-image:url('../images/icons/icon-edu.svg')!important}
.service-box-grid p:nth-child(5):before,.service-box-grid span:nth-child(5):before{background-image:url('../images/icons/icon-luxury.svg')!important}
.service-box-grid p:nth-child(6):before,.service-box-grid span:nth-child(6):before{background-image:url('../images/icons/icon-transfer.svg')!important}
.service-box-grid p:nth-child(7):before,.service-box-grid span:nth-child(7):before{background-image:url('../images/icons/icon-hotel.svg')!important}
.service-box-grid p:nth-child(8):before,.service-box-grid span:nth-child(8):before{background-image:url('../images/icons/icon-briefcase.svg')!important}
.service-box-grid p:nth-child(9):before,.service-box-grid span:nth-child(9):before{background-image:url('../images/icons/icon-globe.svg')!important}
.service-box-grid p:nth-child(10):before,.service-box-grid span:nth-child(10):before{background-image:url('../images/icons/icon-compass.svg')!important}
.service-box-grid p:nth-child(11):before,.service-box-grid span:nth-child(11):before{background-image:url('../images/icons/icon-route.svg')!important}
.service-box-grid p:nth-child(12):before,.service-box-grid span:nth-child(12):before{background-image:url('../images/icons/icon-headset.svg')!important}

/* Destination modules: combine city imagery with readable text on home and destination pages. */
.city-grid-nine,.map-grid.city-grid-nine{grid-template-columns:repeat(auto-fit,minmax(370px,1fr))!important;gap:24px!important;width:100%!important;max-width:none!important;}

.city-tile,.city-tile.wp-block-group{
  position:relative!important;min-height:250px!important;display:flex!important;flex-direction:column!important;justify-content:flex-end!important;overflow:hidden!important;
  border:0!important;border-radius:16px!important;padding:26px!important;background-size:cover!important;background-position:center!important;box-shadow:0 18px 42px rgba(28,27,32,.14)!important;
}
.city-tile:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(28,27,32,.06),rgba(28,27,32,.78));z-index:0;}

.city-tile h3,.city-tile p{position:relative;z-index:2;color:#fff!important;margin:0!important;}
.city-tile h3{font-size:28px!important;line-height:1.12!important;margin-bottom:8px!important;}
.city-tile h3 a{color:#fff!important;text-decoration:none!important;}
.city-tile p{font-size:15px!important;line-height:1.5!important;color:#f4eceb!important;font-weight:700!important;}
.city-tile:nth-child(1){background-image:url('../images/beijing-temple-guide.png')!important}.city-tile:nth-child(2){background-image:url('../images/shanghai-skyline.png')!important}.city-tile:nth-child(3){background-image:url('../images/xian-terracotta.png')!important}.city-tile:nth-child(4){background-image:url('../images/chengdu-panda.png')!important}.city-tile:nth-child(5){background-image:url('../images/guilin-li-river.png')!important}.city-tile:nth-child(6){background-image:url('../images/zhangjiajie-pillars.png')!important}.city-tile:nth-child(7){background-image:url('../images/chongqing-river-night.png')!important}.city-tile:nth-child(8){background-image:url('../images/harbin-ice-festival.png')!important}.city-tile:nth-child(9){background-image:url('../images/guangzhou-canton-tower.png')!important}.city-tile:nth-child(10){background-image:url('../images/hanzhou.jpg')!important}.city-tile:nth-child(11){background-image:url('../images/suzhou.jpg')!important}.city-tile:nth-child(12){background-image:url('../images/yunnan.jpg')!important}.city-tile:nth-child(13){background-image:url('../images/tibet.jpg')!important}.city-tile:nth-child(14){background-image:url('../images/hainan.jpg')!important}.city-tile:nth-child(15){background-image:url('../images/dunhuang.jpg')!important}.city-tile:nth-child(16){background-image:url('../images/nanjing.jpg')!important}

/* Guide resource cards with complete icon circles. */
.guide-resource-card strong{font-size:0!important;color:transparent!important;position:relative!important;width:54px!important;height:54px!important;margin-bottom:18px!important;background:#fff7f6!important;}
.guide-resource-card strong:before{content:""!important;display:block!important;width:32px!important;height:32px!important;background-position:center!important;background-size:32px 32px!important;background-repeat:no-repeat!important;}
.guide-resource-card:nth-child(1) strong:before{background-image:url('../images/icons/icon-globe.svg')!important}.guide-resource-card:nth-child(2) strong:before{background-image:url('../images/icons/icon-tag.svg')!important}.guide-resource-card:nth-child(3) strong:before{background-image:url('../images/icons/icon-route.svg')!important}.guide-resource-card:nth-child(4) strong:before{background-image:url('../images/icons/icon-luxury.svg')!important}.guide-resource-card:nth-child(5) strong:before{background-image:url('../images/icons/icon-clock.svg')!important}.guide-resource-card:nth-child(6) strong:before{background-image:url('../images/icons/icon-briefcase.svg')!important}

/* Floating buttons: icon logo only, no text pills. */
.redgate-floating-contact{right:22px!important;bottom:24px!important;gap:10px!important;}
.float-btn{width:54px!important;height:54px!important;min-width:54px!important;padding:0!important;border-radius:50%!important;display:flex!important;align-items:center!important;justify-content:center!important;}
.float-text,.float-btn .screen-reader-text{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(1px,1px,1px,1px)!important;white-space:nowrap!important;}
.float-icon{width:30px!important;height:30px!important;flex:0 0 30px!important;background-color:transparent!important;background-repeat:no-repeat!important;background-position:center!important;background-size:contain!important;border-radius:0!important;font-size:0!important;line-height:0!important;}
.float-icon-whatsapp,.float-whatsapp .float-icon{background-image:url('../images/icons/icon-whatsapp-white.svg')!important;}
.float-icon-email,.float-email .float-icon{background-image:url('../images/icons/icon-email-white.svg')!important;}

/* Regenerated CF7 form appearance: stable structure, no garbled line breaks. */
.redgate-cf7-form.rg-form-shell{max-width:1180px!important;margin:0 auto!important;padding:34px!important;border-radius:18px!important;background:#fff!important;border:1px solid rgba(185,42,34,.14)!important;box-shadow:0 20px 48px rgba(28,27,32,.10)!important;overflow:visible!important;}
.guide-form-panel .redgate-cf7-form.rg-form-shell{padding:0!important;border:0!important;box-shadow:none!important;background:transparent!important;}
.rg-form-shell-head{grid-template-columns:1fr!important;gap:6px!important;margin-bottom:22px!important;align-items:start!important;}
.rg-form-shell-head h3{font-size:30px!important;line-height:1.15!important;margin:4px 0 2px!important;}
.rg-form-shell-head p{max-width:760px!important;}
.rg-cf7-card{display:block!important;width:100%!important;}
.rg-cf7-card br{display:none!important;}
.rg-form-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px 20px!important;align-items:start!important;}
.rg-field{margin:0!important;display:block!important;min-width:0!important;}
.rg-field label{display:block!important;font-size:13px!important;line-height:1.4!important;color:#322d31!important;font-weight:900!important;}
.rg-field .wpcf7-form-control-wrap{display:block!important;width:100%!important;margin-top:8px!important;}
.rg-field-full{grid-column:1/-1!important;}
.rg-field input,.rg-field select,.rg-field textarea,.wpcf7-form .rg-input,.wpcf7-form .rg-select,.wpcf7-form .rg-textarea{width:100%!important;box-sizing:border-box!important;display:block!important;min-height:52px!important;border:1px solid #ded3d1!important;border-radius:10px!important;background:#fff!important;padding:14px 15px!important;font-size:15px!important;line-height:1.35!important;color:#211f23!important;}
.rg-field textarea,.wpcf7-form .rg-textarea{min-height:150px!important;resize:vertical!important;}
.rg-field input:focus,.rg-field select:focus,.rg-field textarea:focus{border-color:rgba(185,42,34,.75)!important;box-shadow:0 0 0 4px rgba(185,42,34,.10)!important;outline:none!important;}
.rg-form-note{margin:20px 0 0!important;padding:14px 16px!important;border-radius:10px!important;background:#fff8f7!important;border:1px solid #f0dfdc!important;border-left:4px solid var(--orange)!important;color:#685e64!important;font-size:14px!important;line-height:1.55!important;}
.rg-submit{margin:22px 0 0!important;display:flex!important;align-items:center!important;gap:12px!important;}
.rg-submit .wpcf7-spinner{margin:0!important;}
.rg-submit-btn,.wpcf7-form .wpcf7-submit{width:auto!important;min-width:190px!important;min-height:52px!important;border-radius:10px!important;background:var(--orange)!important;color:#fff!important;border:0!important;padding:15px 28px!important;font-weight:900!important;box-shadow:0 12px 26px rgba(185,42,34,.20)!important;}
.wpcf7-not-valid-tip{font-size:12px!important;font-weight:700!important;color:#a92a22!important;margin-top:6px!important;}
.wpcf7 form .wpcf7-response-output{margin:18px 0 0!important;border-radius:10px!important;padding:13px 15px!important;font-size:14px!important;}

@media(max-width:1024px){
  .city-grid-nine,.map-grid.city-grid-nine{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .city-tile{min-height:220px!important;}
  .rg-form-grid{grid-template-columns:1fr!important;}
}
@media(max-width:720px){
  .service-box-grid,.service-box-grid.wp-block-group,.city-grid-nine,.map-grid.city-grid-nine{grid-template-columns:1fr!important;}
  .service-box-grid p,.service-box-grid span{min-height:104px!important;padding:22px 16px!important;}
  .city-tile{min-height:210px!important;padding:22px!important;border-radius:14px!important;}
  .redgate-cf7-form.rg-form-shell{padding:22px!important;border-radius:14px!important;}
  .guide-form-panel .redgate-cf7-form.rg-form-shell{padding:0!important;}
  .rg-form-shell-head h3{font-size:25px!important;}
  .rg-submit-btn,.wpcf7-form .wpcf7-submit{width:100%!important;min-width:0!important;}
  .redgate-floating-contact{right:14px!important;bottom:14px!important;}
  .float-btn{width:50px!important;height:50px!important;min-width:50px!important;}
}

/* =========================================================
   2026-07-21 Register + CF7 form stability fix
   Removes Contact Form 7 layout garbling and normalizes native WP auth forms.
========================================================= */
.redgate-cf7-form.rg-form-shell,
.form-box.cf7-setup-card.rg-form-shell{
  width:100%!important;
  max-width:1180px!important;
  margin:0 auto!important;
  padding:34px!important;
  background:#fff!important;
  border:1px solid rgba(185,42,34,.14)!important;
  border-radius:18px!important;
  box-shadow:0 20px 48px rgba(28,27,32,.10)!important;
  overflow:visible!important;
  box-sizing:border-box!important;
}
.guide-form-panel .redgate-cf7-form.rg-form-shell{
  max-width:none!important;
  padding:24px!important;
  border-radius:16px!important;
  box-shadow:0 14px 34px rgba(28,27,32,.08)!important;
}
.rg-form-shell-head{
  display:block!important;
  margin:0 0 22px!important;
  padding:0 0 18px!important;
  border-bottom:1px solid rgba(185,42,34,.12)!important;
}
.rg-form-shell-head h3{
  margin:4px 0 6px!important;
  font-size:30px!important;
  line-height:1.15!important;
  color:#1c1b20!important;
}
.rg-form-shell-head p{
  margin:0!important;
  max-width:760px!important;
  color:#6e6970!important;
  line-height:1.55!important;
}
.rg-form-eyebrow,
.rg-field-label{
  display:block!important;
  font-size:12px!important;
  line-height:1.2!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  font-weight:900!important;
  color:#b92a22!important;
}
.rg-field-label{margin:0 0 8px!important;color:#312b2f!important;letter-spacing:.03em!important;text-transform:none!important;font-size:13px!important;}
.rg-cf7-card,
.wpcf7-form .rg-cf7-card{
  display:block!important;
  width:100%!important;
  box-sizing:border-box!important;
}
.wpcf7-form .rg-cf7-card br,
.wpcf7-form br{display:none!important;}
.rg-form-grid,
.redgate-cf7-form .rg-form-grid,
.wpcf7-form .rg-form-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px 20px!important;
  width:100%!important;
  align-items:start!important;
  box-sizing:border-box!important;
}
.guide-form-panel .rg-form-grid,
.guide-form-panel .redgate-cf7-form .rg-form-grid{
  grid-template-columns:1fr!important;
  gap:16px!important;
}
.rg-field,
.wpcf7-form .rg-field{
  display:block!important;
  margin:0!important;
  padding:0!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
.rg-field-full,
.wpcf7-form .rg-field-full{grid-column:1/-1!important;}
.rg-field .wpcf7-form-control-wrap,
.wpcf7-form-control-wrap{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
}
.rg-input,
.rg-select,
.rg-textarea,
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="url"],
.wpcf7-form input[type="tel"],
.wpcf7-form input[type="number"],
.wpcf7-form select,
.wpcf7-form textarea{
  width:100%!important;
  max-width:100%!important;
  min-height:52px!important;
  margin:0!important;
  padding:14px 15px!important;
  border:1px solid #e5d8d5!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#211f23!important;
  font-size:15px!important;
  font-weight:600!important;
  line-height:1.35!important;
  box-sizing:border-box!important;
  outline:none!important;
  appearance:auto!important;
}
.wpcf7-form textarea,
.rg-textarea{min-height:150px!important;resize:vertical!important;}
.wpcf7-form input:focus,
.wpcf7-form select:focus,
.wpcf7-form textarea:focus,
.rg-input:focus,
.rg-select:focus,
.rg-textarea:focus{
  border-color:#b92a22!important;
  box-shadow:0 0 0 4px rgba(185,42,34,.10)!important;
}
.rg-form-note{
  display:block!important;
  margin:20px 0 0!important;
  padding:14px 16px!important;
  border-radius:10px!important;
  background:#fff8f7!important;
  border:1px solid #f0dfdc!important;
  border-left:4px solid #b92a22!important;
  color:#685e64!important;
  font-size:14px!important;
  line-height:1.55!important;
}
.rg-submit{display:flex!important;justify-content:flex-start!important;align-items:center!important;margin-top:20px!important;gap:12px!important;}
.rg-submit-btn,
.wpcf7-form .wpcf7-submit{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:200px!important;
  min-height:54px!important;
  padding:15px 30px!important;
  border:0!important;
  border-radius:10px!important;
  background:#b92a22!important;
  color:#fff!important;
  font-weight:900!important;
  letter-spacing:.01em!important;
  box-shadow:0 12px 26px rgba(185,42,34,.22)!important;
  cursor:pointer!important;
}
.wpcf7-form .wpcf7-spinner{margin:0 0 0 10px!important;}
.wpcf7-not-valid-tip{display:block!important;margin-top:7px!important;color:#a92a22!important;font-size:12px!important;font-weight:800!important;}
.wpcf7 form .wpcf7-response-output{
  margin:18px 0 0!important;
  padding:13px 15px!important;
  border-radius:10px!important;
  font-size:14px!important;
  line-height:1.5!important;
}

/* Native partner login/register repair */
.partner-auth-page{
  padding:76px 0!important;
}
.partner-auth-panel{
  box-sizing:border-box!important;
  padding:28px!important;
  border-radius:18px!important;
  background:#fff!important;
  border:1px solid rgba(185,42,34,.15)!important;
  box-shadow:0 26px 70px rgba(28,27,32,.22)!important;
  max-width:540px!important;
  width:100%!important;
}
.auth-tabs{margin-bottom:22px!important;border-radius:12px!important;padding:6px!important;background:#f5f1f0!important;}
.auth-tabs a{border-radius:9px!important;min-height:44px!important;text-decoration:none!important;}
.login-card,
.login-card.login-card--register{
  padding:0!important;
  border:0!important;
  box-shadow:none!important;
  background:transparent!important;
}
.auth-card-head{margin-bottom:20px!important;}
.auth-card-head h2{font-size:30px!important;line-height:1.15!important;margin:0 0 6px!important;color:#1c1b20!important;}
.auth-card-head p{margin:0!important;color:#6e6970!important;line-height:1.55!important;}
.modern-auth-form,
#redgate-partner-loginform{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:16px!important;
  margin:0!important;
}
.modern-auth-form .form-row,
#redgate-partner-loginform p{
  display:grid!important;
  gap:7px!important;
  margin:0!important;
}
.modern-auth-form .form-row.two{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:14px!important;
}
.modern-auth-form label,
#redgate-partner-loginform label{
  display:block!important;
  font-size:13px!important;
  font-weight:900!important;
  color:#312b2f!important;
  margin:0!important;
}
.modern-auth-form input,
#redgate-partner-loginform input[type="text"],
#redgate-partner-loginform input[type="password"]{
  width:100%!important;
  height:52px!important;
  border:1px solid #e5d8d5!important;
  border-radius:10px!important;
  padding:0 15px!important;
  background:#fff!important;
  color:#211f23!important;
  font-size:15px!important;
  box-sizing:border-box!important;
}
.modern-auth-form input:focus,
#redgate-partner-loginform input:focus{
  border-color:#b92a22!important;
  box-shadow:0 0 0 4px rgba(185,42,34,.10)!important;
  outline:none!important;
}
#redgate-partner-loginform .login-remember label{
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
  color:#6e6970!important;
  font-size:14px!important;
}
#redgate-partner-loginform .login-remember input{width:16px!important;height:16px!important;min-height:0!important;}
.modern-auth-form .btn,
#redgate-partner-loginform .login-submit .button,
.auth-wide-btn{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:54px!important;
  border-radius:10px!important;
  background:#b92a22!important;
  color:#fff!important;
  border:0!important;
  font-weight:900!important;
  text-decoration:none!important;
  box-shadow:0 12px 26px rgba(185,42,34,.22)!important;
}
.demo-code{margin-top:18px!important;line-height:1.55!important;color:#6e6970!important;}
.demo-code a{color:#b92a22!important;font-weight:900!important;}
.auth-message{border-radius:10px!important;padding:13px 15px!important;line-height:1.45!important;}
@media(max-width:980px){
  .partner-auth-panel{max-width:620px!important;margin:0 auto!important;}
}
@media(max-width:720px){
  .redgate-cf7-form.rg-form-shell,
  .form-box.cf7-setup-card.rg-form-shell,
  .guide-form-panel .redgate-cf7-form.rg-form-shell{
    padding:22px!important;
    border-radius:14px!important;
  }
  .rg-form-grid,
  .redgate-cf7-form .rg-form-grid,
  .wpcf7-form .rg-form-grid,
  .modern-auth-form .form-row.two{
    grid-template-columns:1fr!important;
  }
  .rg-submit{display:block!important;}
  .rg-submit-btn,
  .wpcf7-form .wpcf7-submit{width:100%!important;min-width:0!important;}
  .partner-auth-panel{padding:22px!important;border-radius:15px!important;}
  .auth-card-head h2,.rg-form-shell-head h3{font-size:25px!important;}
}


/* =========================================================
   2026-07-23 full-bleed page banners + package action states
========================================================= */
body .wp-block-cover.hero-cover,
body .wp-block-cover.hero-cover.alignfull{
  width:100%!important;
  max-width:none!important;
  box-sizing:border-box!important;
  position:relative!important;
  overflow:hidden!important;
}
body .wp-block-cover.hero-cover > .wp-block-cover__image-background{
  width:100%!important;
  height:100%!important;
  max-width:none!important;

}
body .wp-block-cover.hero-cover > .wp-block-cover__inner-container{
  width:100%!important;
  max-width:none!important;
}
.program-actions .btn.is-disabled{
  opacity:.72;
}
@supports(width:100dvw){
  body .wp-block-cover.hero-cover,
  body .wp-block-cover.hero-cover.alignfull{
    width:100%!important;

  }
}

/* =========================================================
   2026-07-30 merged banners, image cards and detail pages
========================================================= */
@media(min-width:981px){
  .main-nav .main-menu a{
    font-size:17px!important;
    padding-left:14px!important;
    padding-right:14px!important;
  }
}

.home-hero + .search-shell{margin-top:-42px!important}

.home-service-grid,
.service-image-grid,
.destination-link-grid,
.destination-overview-grid,
.text-card-grid,
.case-project-grid,
.destination-highlight-grid,
.destination-segment-grid,
.case-fact-grid,
.office-support-grid{
  display:grid;
  gap:24px;
}
.home-service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.home-service-card,
.service-image-card,
.destination-overview-showcase-card{
  display:flex;
  flex-direction:column;
  min-width:0;
  overflow:hidden;
  background:#fff;
  border:1px solid var(--line);
  border-radius:8px;
  box-shadow:0 12px 30px rgba(28,27,32,.08);
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.home-service-card:hover,
.service-image-card:hover,
.destination-overview-card:hover{
  transform:translateY(-4px);
  border-color:rgba(185,42,34,.42);
  box-shadow:0 20px 42px rgba(28,27,32,.13);
}
.home-service-card__image,
.service-image-card>img,
.destination-overview-card>img{
  width:100%;
  height:220px;
  object-fit:cover;
}
.home-service-card>div,
.service-image-card>div,
.destination-overview-card>div{padding:22px}
.home-service-card h3,
.service-image-card h3,
.destination-overview-card h3{font-size:22px;margin:0 0 10px}
.home-service-card p,
.service-image-card p,
.destination-overview-card p{margin:0;color:var(--muted);line-height:1.65}

.destination-link-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.destination-link-card{
  display:flex;
  flex-direction:column;
  gap:6px;
  min-height:118px;
  padding:20px;
  background:#fff;
  border:1px solid var(--line);
  border-left:4px solid var(--orange);
  border-radius:6px;
  transition:.2s ease;
}
.destination-link-card:hover{transform:translateY(-3px);box-shadow:0 13px 30px rgba(28,27,32,.1)}
.destination-link-card strong{font:700 21px/1.2 Georgia,'Times New Roman',serif;color:var(--navy)}
.destination-link-card span{color:var(--muted);font-size:14px;line-height:1.5}

.text-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.text-card{
  background:#fff;
  border:1px solid var(--line);
  border-top:4px solid var(--orange);
  border-radius:6px;
  padding:25px;
  box-shadow:0 9px 24px rgba(28,27,32,.06);
}
.text-card h3{font-size:21px;margin:0 0 10px}
.text-card p{color:var(--muted);margin:0}
.support-growth-grid{max-width:1120px;margin:0 auto}

.case-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.case-project-card{
  background:#fff;
  border:1px solid var(--line);
  border-left:5px solid var(--orange);
  border-radius:7px;
  padding:28px;
  box-shadow:0 12px 28px rgba(28,27,32,.07);
}
.case-project-card h3{font-size:25px;margin:0 0 8px}
.case-project-card>strong{display:block;color:var(--orange);margin-bottom:10px}
.case-project-card>p:not(.case-project-meta){color:var(--muted);margin:0 0 18px}
.case-project-meta{text-transform:uppercase;letter-spacing:.09em;font-size:12px;font-weight:900;color:var(--muted);margin:0 0 10px}

.partner-testimonials{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);
  align-items:stretch;
  gap:0;
  overflow:hidden;
  background:#f4f4f0;
  border:1px solid var(--line);
  border-radius:8px;
  box-shadow:0 16px 34px rgba(28,27,32,.08);
}
.partner-testimonials__image-wrap{min-height:390px}
.partner-testimonials__image-wrap img{width:100%;height:100%;display:block;object-fit:cover}
.partner-testimonials__content{
  min-height:390px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:42px 48px;
  text-align:center;
}
.partner-testimonials__content>h2{margin:0 0 22px;font-size:34px}
.partner-testimonials__content>.kicker{justify-content:center}
.partner-testimonial-viewport{min-height:206px;display:flex;align-items:center;justify-content:center}
.partner-testimonial{width:100%}
.partner-testimonial[hidden]{display:none}
.partner-testimonial__avatar{
  width:68px;
  height:68px;
  display:block;
  object-fit:cover;
  border-radius:50%;
  margin:0 auto 17px;
  border:3px solid #fff;
  box-shadow:0 5px 16px rgba(28,27,32,.16);
}
.partner-testimonial blockquote{margin:0}
.partner-testimonial blockquote p{margin:0 auto 16px;color:var(--muted);font-style:italic;line-height:1.75;max-width:610px}
.partner-testimonial cite{display:block;color:var(--navy);font-size:14px;font-style:normal;font-weight:800}
.testimonial-navigation{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:22px}
.testimonial-control{
  width:38px;
  height:38px;
  border:1px solid #cfcfca;
  border-radius:50%;
  background:#fff;
  color:var(--navy);
  font-size:27px;
  line-height:1;
  cursor:pointer;
  transition:.2s ease;
}
.testimonial-control:hover{color:#fff;background:var(--orange);border-color:var(--orange)}
.testimonial-dots{display:flex;align-items:center;gap:4px}
.testimonial-dot{
  position:relative;
  width:24px;
  height:24px;
  padding:0;
  border:0;
  background:transparent;
  cursor:pointer;
}
.testimonial-dot::before{
  content:"";
  position:absolute;
  width:10px;
  height:10px;
  left:50%;
  top:50%;
  border-radius:50%;
  background:#c9c9c4;
  transform:translate(-50%,-50%);
  transition:transform .2s ease,background-color .2s ease;
}
.testimonial-dot.is-active::before{background:var(--navy);transform:translate(-50%,-50%) scale(1.15)}
.testimonial-control:focus-visible,
.testimonial-dot:focus-visible{outline:3px solid rgba(198,54,45,.35);outline-offset:3px}

.service-image-grid-four{grid-template-columns:repeat(4,minmax(0,1fr))}
.service-image-grid-three{grid-template-columns:repeat(3,minmax(0,1fr))}
.service-image-card>img{height:190px}
.services-core-section .section-head,
.dmc-arrangements-section .section-head{max-width:940px}

.destination-overview-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.destination-overview-card{color:inherit}
.destination-overview-card>img{height:190px}
.destination-overview-card h3{font-size:23px}
.destination-inquiry-panel{border-left:6px solid var(--orange)}
.destination-followup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.destination-followup-card{
  overflow:hidden;
  background:#fff;
  border:1px solid var(--line);
  border-radius:8px;
  box-shadow:0 12px 28px rgba(28,27,32,.07);
}
.destination-followup-card>img{width:100%;height:245px;display:block;object-fit:cover}
.destination-followup-card>div{padding:30px}
.destination-followup-card h2{font-size:29px;margin:0 0 12px}
.destination-followup-card p:not(.kicker){color:var(--muted);line-height:1.7;margin:0 0 20px}

.story-values-grid,
.partner-resource-grid,
.destination-planning-grid,
.case-story-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:28px;
}
.story-panel,
.values-panel,
.partner-resource-grid>article,
.destination-planning-grid>article,
.case-story-grid>article{
  background:#fff;
  border:1px solid var(--line);
  border-radius:8px;
  padding:30px;
  box-shadow:0 12px 28px rgba(28,27,32,.07);
}
.story-panel p,
.partner-resource-grid li,
.destination-planning-grid p,
.case-story-grid p{color:var(--muted);line-height:1.7}
.values-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.values-panel article{background:var(--stone);border-left:4px solid var(--orange);padding:18px}
.values-panel h3{font-size:20px;margin:0 0 6px}
.values-panel p{margin:0;color:var(--muted)}
.partner-resource-grid ul,
.partner-resource-grid ol{padding-left:22px;margin:18px 0;color:var(--muted)}
.partner-resource-grid li{margin-bottom:10px}

.destination-highlight-grid,
.destination-segment-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.destination-highlight-card,
.destination-segment-card{
  background:#fff;
  border:1px solid var(--line);
  border-top:4px solid var(--orange);
  padding:24px 20px;
  border-radius:6px;
  text-align:center;
}
.destination-highlight-card h3,
.destination-segment-card h3{font-size:21px}
.destination-planning-grid{align-items:stretch}
.destination-planning-grid>article{border-left:5px solid var(--orange)}

.case-fact-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.case-fact-card{
  background:#fff;
  border:1px solid var(--line);
  border-top:4px solid var(--orange);
  padding:24px;
  border-radius:6px;
}
.case-fact-card span{display:block;text-transform:uppercase;letter-spacing:.09em;font-size:12px;font-weight:900;color:var(--muted);margin-bottom:8px}
.case-fact-card strong{display:block;color:var(--navy);font-size:18px;line-height:1.45}
.case-service-list{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  padding:0;
  margin:0;
  list-style:none;
}
.case-service-list li{background:#fff;border:1px solid var(--line);border-left:4px solid var(--orange);padding:17px 18px;font-weight:800;color:var(--navy)}
.case-service-group-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.case-cta-panel{align-items:start}
.case-cta-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.case-cta-tags span{display:inline-flex;align-items:center;background:#f8f5ef;border:1px solid #e4d8c8;border-left:3px solid var(--orange);border-radius:4px;padding:8px 11px;color:var(--navy);font-size:13px;font-weight:900}
.case-document-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:24px;
}
.case-document-grid.case-service-group-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.case-document-section{
  background:#fff;
  border:1px solid var(--line);
  border-radius:8px;
  padding:28px;
  box-shadow:0 12px 28px rgba(28,27,32,.06);
}
.case-document-section h2{font-size:26px;margin:0 0 14px}
.case-document-section p:not(.kicker),
.case-document-section li{color:var(--muted);line-height:1.72}
.case-document-section ul{padding-left:20px;margin:16px 0 0}
.case-gallery-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.case-gallery-item{
  margin:0;
  border:1px solid var(--line);
  border-radius:8px;
  overflow:hidden;
  background:#fff;
}
.case-gallery-item img{
  width:100%;
  aspect-ratio:16/10;
  display:block;
  object-fit:cover;
}

.contact-page-grid{display:grid;grid-template-columns:300px minmax(0,1fr);gap:34px;align-items:start}
.contact-page-intro{
  position:sticky;
  top:122px;
  background:var(--navy);
  color:#fff;
  border-radius:8px;
  padding:28px;
}
.contact-page-intro h2{color:#fff}
.contact-page-intro .kicker{color:#fff}
.contact-page-intro .kicker:before,
.contact-page-intro .kicker:after{background:#fff}
.contact-page-intro p{color:#e4dddd}
.contact-page-cards .redgate-contact-info-wrap{grid-template-columns:repeat(2,minmax(0,1fr))}
.contact-page-cards .redgate-contact-card-main{grid-column:1/-1}
/*.office-support-section{background:#ececec!important}*/
.office-support-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:940px;margin:0 auto}
.office-support-grid article{background:#fff;border:1px solid #d7d7d7;border-left:5px solid var(--orange);padding:25px;border-radius:7px}
.office-support-grid h3{font-size:23px;margin:0 0 8px}
.office-support-grid p{color:var(--muted);margin:0}

.shared-partner-cta .cta-panel{border-left:6px solid var(--orange)}
.legal-page{max-width:900px}
.legal-page h2{font-size:27px;margin:34px 0 10px}
.legal-page p{color:var(--muted);line-height:1.8;margin:0}
.legal-page a{color:var(--orange);font-weight:800;text-decoration:underline;text-underline-offset:3px}
.legal-updated{padding:14px 18px;border-left:4px solid var(--orange);background:var(--stone)}

@media(max-width:1180px){
  .home-service-grid,.text-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .destination-link-grid,.destination-overview-grid,.service-image-grid-four{grid-template-columns:repeat(2,minmax(0,1fr))}
  .service-image-grid-three{grid-template-columns:repeat(2,minmax(0,1fr))}
  .destination-highlight-grid,.destination-segment-grid,.case-fact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .partner-testimonials{grid-template-columns:minmax(0,1fr) minmax(380px,.9fr)}
  .partner-testimonials__content{padding:36px 32px}
}
@media(max-width:900px){
  .case-project-grid,.story-values-grid,.partner-resource-grid,.destination-planning-grid,.case-story-grid,.case-document-grid,.contact-page-grid,.partner-testimonials,.destination-followup-grid{grid-template-columns:1fr}
  .case-document-grid.case-service-group-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .contact-page-intro{position:static}
  .case-service-list,.case-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .partner-testimonials__image-wrap{min-height:320px}
  .partner-testimonials__content{min-height:360px}
}
@media(max-width:680px){
  .home-service-grid,.service-image-grid-three,.service-image-grid-four,.destination-link-grid,.destination-overview-grid,.text-card-grid,.destination-highlight-grid,.destination-segment-grid,.case-fact-grid,.case-service-list,.case-gallery-grid,.office-support-grid{grid-template-columns:1fr}
  .case-document-grid.case-service-group-grid{grid-template-columns:1fr}
  .home-service-card__image,.service-image-card>img,.destination-overview-card>img{height:205px}
  .values-panel{grid-template-columns:1fr}
  .contact-page-cards .redgate-contact-info-wrap{grid-template-columns:1fr}
  .contact-page-cards .redgate-contact-card-main{grid-column:auto}
  .partner-testimonials__image-wrap{min-height:235px}
  .partner-testimonials__content{min-height:390px;padding:32px 20px}
  .partner-testimonials__content>h2{font-size:29px}
  .partner-testimonial-viewport{min-height:238px}
  .destination-followup-card>img{height:210px}
  .destination-followup-card>div{padding:24px}
}

/* =========================================================
   2026-07-31 requested project and destination card layouts
========================================================= */
.successful-projects-section .case-project-grid--home,
.curated-collections-section .curated-collections-grid,
.support-growth-section .support-growth-card-grid,
.next-program-section .next-program-card-grid{
  display:grid!important;
  align-items:stretch!important;
  gap:28px!important;
  width:100%!important;
  max-width:none!important;
}
.successful-projects-section .case-project-grid--home,
.curated-collections-section .curated-collections-grid,
.next-program-section .next-program-card-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
.support-growth-section .support-growth-card-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  max-width:1600px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.successful-projects-section .case-project-card{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  height:100%!important;
  min-height:100%!important;
  padding:18px 22px 24px!important;
  background:#fff!important;
  border:1px solid #e5dddc!important;
  border-left:4px solid var(--orange)!important;
  border-radius:5px!important;
  box-shadow:0 12px 28px rgba(28,27,32,.06)!important;
  justify-content: space-between;
}
.successful-projects-section .case-project-card h3{
  margin:0 0 6px!important;
  color:#0f1720!important;
  font-size:21px!important;
  line-height:1.35!important;
}
.successful-projects-section .case-project-card h3 a{
  color:inherit!important;
  text-decoration:none!important;
}
.successful-projects-section .case-project-card h3 a:hover{color:var(--orange)!important}
.successful-projects-section .case-project-card>strong{
  display:block!important;
  color:#0f1720!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:19px!important;
  line-height:1.45!important;
  margin:0 0 24px!important;
}
.successful-projects-section .case-project-card>p:not(.case-project-meta){
  color:#60575f!important;
  font-size:16px!important;
  font-weight:700!important;
  line-height:1.55!important;
  margin:0 0 6px!important;
}
.successful-projects-section .case-project-meta{
  color:#4f474e!important;
  font-size:13px!important;
  font-weight:800!important;
  letter-spacing:0!important;
  line-height:1.35!important;
  margin:auto 0 0 16px!important;
  text-transform:none!important;
}
.successful-projects-section .case-project-card .btn{
     align-self:flex-start!important;
  margin-top:auto!important;
  min-width:190px!important;
  padding:12px 18px!important;
  background:#fff!important;
  border:1px solid #e5d8d5!important;
  color:#0f1720!important;
  box-shadow:none!important;
}
.successful-projects-section .case-project-card .btn:hover{
  border-color:var(--orange)!important;
  color:var(--orange)!important;
  transform:none!important;
}
.curated-collections-section .program-card,
.support-growth-section .program-card,
.next-program-section .program-card{
  display:flex!important;
  flex-direction:column!important;
  min-height:100%!important;
  overflow:hidden!important;
  background:#fff!important;
  border:1px solid #e5dddc!important;
  border-radius:7px!important;
  box-shadow:0 14px 32px rgba(28,27,32,.08)!important;
}
.curated-collections-section .program-img,
.support-growth-section .program-img,
.next-program-section .program-img{
  width:100%!important;
  height:205px!important;
  background-size:cover!important;
  background-position:center!important;
}
.curated-collections-section .program-img{height:185px!important}
.support-growth-section .program-img,
.next-program-section .program-img{height:205px!important}
.curated-collections-section .program-body,
.support-growth-section .program-body,
.next-program-section .program-body{
  display:flex!important;
  flex:1 1 auto!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  padding:20px 20px 22px!important;
}
.curated-collections-section .program-body h3,
.support-growth-section .program-body h3,
.next-program-section .program-body h3{
  margin:0 0 8px!important;
  color:#0f1720!important;
  font-size:21px!important;
  line-height:1.18!important;
}
.curated-collections-section .program-meta,
.support-growth-section .program-meta{
  color:var(--orange)!important;
  font-size:15px!important;
  font-weight:900!important;
  line-height:1.45!important;
  margin:0 0 12px!important;
}
.curated-collections-section .program-body p,
.support-growth-section .program-body p,
.next-program-section .program-body p{
  color:#4f6478!important;
  font-size:16px!important;
  line-height:1.6!important;
  margin:0 0 18px!important;
}
.curated-collections-section .program-body .btn,
.next-program-section .program-body .btn{
  margin-top:auto!important;
  min-height:33px!important;
  padding:9px 15px!important;
  border-radius:4px!important;
  font-size:14px!important;
  box-shadow:0 12px 26px rgba(185,42,34,.18)!important;
}
.support-growth-section .program-card{
  box-shadow:0 14px 34px rgba(28,27,32,.07)!important;
}
.support-growth-section .program-body{
  min-height:220px!important;
}
.next-program-section .program-body{
  min-height:172px!important;
}
@media(max-width:1180px){
  .successful-projects-section .case-project-grid--home,
  .curated-collections-section .curated-collections-grid,
  .support-growth-section .support-growth-card-grid,
  .next-program-section .next-program-card-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .support-growth-section .support-growth-card-grid{
    max-width:none!important;
  }
}
@media(max-width:760px){
  .successful-projects-section .case-project-grid--home,
  .curated-collections-section .curated-collections-grid,
  .support-growth-section .support-growth-card-grid,
  .next-program-section .next-program-card-grid{
    grid-template-columns:1fr!important;
    gap:20px!important;
  }
  .successful-projects-section .case-project-card{padding:18px!important}
  .curated-collections-section .program-img,
  .support-growth-section .program-img,
  .next-program-section .program-img{height:190px!important}
  .curated-collections-section .program-body h3,
  .support-growth-section .program-body h3,
  .next-program-section .program-body h3{font-size:23px!important}
}

/* =========================================================
   2026-08-04 destination details and culture modules
========================================================= */
.service-box-grid.services-no-icons p::before,
.service-box-grid.services-no-icons span::before{
  content:none!important;
  display:none!important;
  background-image:none!important;
}
.service-box-grid.services-no-icons p,
.service-box-grid.services-no-icons span{
  min-height:92px!important;
  padding-top:22px!important;
}
.destination-best-for{
  margin-top:18px;
  padding-top:14px;
  border-top:1px solid rgba(28,27,32,.12);
}
.destination-best-for strong{
  display:block;
  color:#1c1b20;
  font-weight:900;
  margin-bottom:8px;
}
.destination-best-for ul{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  padding:0;
  margin:0;
  list-style:none;
}
.destination-best-for li{
  padding:7px 10px;
  background:#fff7f6;
  border:1px solid rgba(185,42,34,.18);
  color:#b92a22;
  border-radius:4px;
  font-size:13px;
  font-weight:900;
}
.destination-detail-hero.hero-cover.hero-image{
  height:550px!important;
  min-height:440px!important;
}
.destination-detail-hero .hero-badge{
  max-width:510px!important;
  padding:16px 22px!important;
  bottom:104px!important;
}
.destination-detail-hero .hero-label{
  margin-bottom:4px!important;
}
.destination-detail-hero .hero-title{
  font-size:28px!important;
  line-height:1.14!important;
}
.destination-detail-hero .hero-kicker{
  margin:8px 0 0!important;
  font-size:13px!important;
  line-height:1.45!important;
  font-weight:800!important;
}
.destination-detail-hero .hero-summary{
  margin:10px 0 0!important;
  font-size:15px!important;
  line-height:1.58!important;
  max-width:460px!important;
}
.destination-detail-hero .destination-best-for{
  display:none!important;
}
.destination-detail-hero .hero-actions{
  margin-top:16px!important;
}
@media(max-width:720px){
  .destination-detail-hero.hero-cover.hero-image{
    height:380px!important;
    min-height:380px!important;
  }
  .destination-detail-hero .hero-badge{
    bottom:38px!important;
    padding:14px 16px!important;
  }
  .destination-detail-hero .hero-title{
    font-size:23px!important;
  }
  .destination-detail-hero .hero-summary{
    display:none!important;
  }
}
.destination-overview-fact-grid,
.destination-detail-text-grid,
.destination-detail-image-grid,
.destination-itinerary-grid,
.destination-hotel-grid,
.destination-combine-grid,
.attraction-showcase-grid,
.cultural-experience-grid{
  display:grid;
  gap:24px;
}
.destination-overview-fact-grid{
  grid-template-columns:repeat(5,minmax(0,1fr));
}
.destination-overview-fact-grid article,
.destination-detail-text-card,
.destination-itinerary-card,
.destination-hotel-card,
.destination-combine-card{
  background:#fff;
  border:1px solid #e5dddc;
  border-left:4px solid var(--orange);
  border-radius:7px;
  padding:22px;
  box-shadow:0 12px 28px rgba(28,27,32,.06);
}
.destination-overview-fact-grid span{
  display:block;
  color:#6e6970;
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  margin-bottom:8px;
}
.destination-overview-fact-grid strong{
  display:block;
  color:#1c1b20;
  font-size:17px;
  line-height:1.4;
}
.destination-detail-text-grid,
.destination-itinerary-grid,
.destination-hotel-grid,
.destination-combine-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.destination-detail-text-card h3,
.destination-itinerary-card h3,
.destination-hotel-card h3,
.destination-combine-card h3{
  font-size:24px;
  margin:0 0 10px;
}
.destination-detail-text-card p,
.destination-combine-card p{
  margin:0;
  color:#5d6f7c;
  line-height:1.65;
}
.destination-detail-text-card ul,
.destination-itinerary-card ul,
.destination-hotel-card ul,
.destination-split-panel ul,
.destination-cta-section ul,
.destination-detail-image-card ul,
.attraction-showcase-card ul{
  margin:14px 0 0;
  padding-left:20px;
  color:#4f6478;
  line-height:1.65;
}
.destination-detail-image-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.destination-detail-image-card{
  overflow:hidden;
  background:#fff;
  border:1px solid #e5dddc;
  border-radius:7px;
  box-shadow:0 14px 32px rgba(28,27,32,.08);
}
.destination-detail-image-card img{
  width:100%;
  height:220px;
  object-fit:cover;
}
.destination-detail-image-card>div{
  padding:22px;
}
.destination-detail-image-card h3{
  margin:0 0 8px;
  font-size:21px;
}
.destination-detail-image-card strong,
.attraction-showcase-card strong{
  display:block;
  color:#1c1b20;
  line-height:1.35;
  margin-bottom:8px;
}
.destination-detail-image-card span{
  display:block;
  color:#b92a22;
  font-size:13px;
  font-weight:900;
  line-height:1.45;
  margin-bottom:10px;
}
.destination-detail-image-card p{
  color:#4f6478;
  line-height:1.65;
  margin:0;
}
.destination-split-panel{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:28px;
  align-items:start;
  background:#fff;
  border:1px solid #e5dddc;
  border-left:5px solid var(--orange);
  border-radius:8px;
  padding:30px;
  box-shadow:0 14px 32px rgba(28,27,32,.07);
}
.destination-split-panel h2{
  margin-bottom:12px;
}
.destination-split-panel p{
  color:#5d6f7c;
  line-height:1.7;
  margin:0;
}
.destination-itinerary-card strong{
  display:block;
  color:#b92a22;
  margin-bottom:8px;
}
.destination-cta-section .cta-panel ul{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  padding:0;
  list-style:none;
}
.destination-cta-section .cta-panel li{
  padding:8px 10px;
  background:#fff7f6;
  border:1px solid rgba(185,42,34,.18);
  border-radius:4px;
  color:#1c1b20;
  font-weight:800;
}
.attraction-showcase-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.attraction-showcase-card,
.cultural-experience-card{
  overflow:hidden;
  background:#fff;
  border:1px solid #e5dddc;
  border-radius:7px;
  box-shadow:0 14px 32px rgba(28,27,32,.08);
}
.attraction-showcase-card img,
.cultural-experience-card img{
  width:100%;
  height:205px;
  object-fit:cover;
}
.attraction-showcase-card>div{
  padding:20px;
}
.attraction-showcase-card h3{
  margin:0 0 8px;
  font-size:23px;
}
.attraction-showcase-card h4{
  margin:16px 0 0;
  color:#1c1b20;
  font-size:15px;
}
.attraction-showcase-card p{
  color:#4f6478;
  line-height:1.6;
  margin:0 0 12px;
}
.attraction-showcase-card .program-meta{
  color:#b92a22!important;
  margin-bottom:10px!important;
}
.cultural-experience-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.cultural-experience-card{
  padding-bottom:18px;
}
.cultural-experience-card h3{
  margin:18px 18px 7px;
  font-size:21px;
}
.cultural-experience-card p{
  margin:0 18px;
  color:#b92a22;
  font-weight:900;
}
@media(max-width:1180px){
  .destination-overview-fact-grid,
  .destination-detail-image-grid,
  .attraction-showcase-grid,
  .cultural-experience-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .destination-detail-text-grid,
  .destination-itinerary-grid,
  .destination-hotel-grid,
  .destination-combine-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:760px){
  .destination-overview-fact-grid,
  .destination-detail-text-grid,
  .destination-detail-image-grid,
  .destination-itinerary-grid,
  .destination-hotel-grid,
  .destination-combine-grid,
  .destination-split-panel,
  .attraction-showcase-grid,
  .cultural-experience-grid{
    grid-template-columns:1fr;
  }
  .destination-detail-image-card img,
  .attraction-showcase-card img,
  .cultural-experience-card img{
    height:190px;
  }
  .destination-split-panel{
    padding:24px;
  }
}

/* =========================================================
   2026-08-05 global mobile adaptation pass
========================================================= */
@media(max-width:900px){
  html,
  body{
    overflow-x:hidden!important;
  }
  body{
    -webkit-text-size-adjust:100%;
  }
  .wp-block-group.container,
  .container{
    max-width:100%!important;
    padding-left:18px!important;
    padding-right:18px!important;
    box-sizing:border-box!important;
  }
  .section,
  .section-alt,
  .section-stone,
  .intro,
  .subpage-intro,
  .partner-auth-page{
    padding-top:52px!important;
    padding-bottom:52px!important;
  }
  .section-head{
    max-width:100%!important;
    margin-bottom:26px!important;
  }
  .section-head h2,
  .text-block h2,
  .destination-split-panel h2,
  .cta-panel h2{
    font-size:clamp(26px,7vw,34px)!important;
    line-height:1.16!important;
  }
  .section-head p,
  .lead,
  .text-block p,
  .cta-panel p{
    font-size:16px!important;
    line-height:1.62!important;
  }
  .wp-block-columns,
  .split,
  .quote-layout,
  .service-band,
  .service-band-image,
  .china-map-panel,
  .city-info-grid,
  .portal-banner,
  .portal-layout,
  .auth-wrap,
  .contact-page-grid,
  .partner-testimonials,
  .destination-followup-grid,
  .destination-split-panel,
  .cta-panel{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:22px!important;
  }
  .wp-block-columns{
    display:flex!important;
    flex-direction:column!important;
  }
  .wp-block-column{
    flex-basis:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
  .home-service-grid,
  .service-image-grid-three,
  .service-image-grid-four,
  .service-box-grid,
  .service-list,
  .service-list-wide,
  .icon-grid,
  .stats-strip,
  .program-row,
  .program-row-four,
  .case-project-grid,
  .case-project-grid--home,
  .case-strip,
  .contact-methods,
  .map-grid,
  .city-grid-nine,
  .destination-link-grid,
  .destination-overview-grid,
  .destination-highlight-grid,
  .destination-segment-grid,
  .destination-planning-grid,
  .destination-overview-fact-grid,
  .destination-detail-text-grid,
  .destination-detail-image-grid,
  .destination-itinerary-grid,
  .destination-hotel-grid,
  .destination-combine-grid,
  .destination-followup-grid,
  .attraction-showcase-grid,
  .cultural-experience-grid,
  .case-fact-grid,
  .case-story-grid,
  .case-document-grid,
  .case-gallery-grid,
  .case-service-list,
  .guide-topic-grid,
  .partner-resource-grid,
  .partner-resource-grid.wp-block-group,
  .portal-grid,
  .duration-grid,
  .browse-grid,
  .values-grid,
  .team-placeholder,
  .office-support-grid,
  .rg-form-grid,
  .form-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    max-width:100%!important;
    width:100%!important;
    gap:18px!important;
  }
  .search-panel,
  .redgate-search-panel{
    display:grid!important;
    grid-template-columns:1fr!important;
    border-radius:10px!important;
  }
  .search-field{
    min-width:0!important;
    border-right:0!important;
    border-bottom:1px solid var(--line)!important;
  }
  .search-panel .btn,
  .redgate-search-panel .btn{
    width:100%!important;
    min-width:0!important;
    height:52px!important;
    border-radius:0 0 10px 10px!important;
  }
  .home-service-card,
  .service-image-card,
  .destination-overview-card,
  .destination-detail-image-card,
  .attraction-showcase-card,
  .cultural-experience-card,
  .case-project-card,
  .case-document-section,
  .case-story-grid>article,
  .destination-detail-text-card,
  .destination-itinerary-card,
  .destination-hotel-card,
  .destination-combine-card,
  .partner-resource-grid>article,
  .guide-topic-card,
  .city-tile,
  .icon-card{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }
  .home-service-card__image,
  .service-image-card>img,
  .destination-overview-card>img,
  .destination-detail-image-card img,
  .attraction-showcase-card img,
  .cultural-experience-card img,
  .case-gallery-item img,
  .destination-followup-card>img,
  .partner-testimonials__image-wrap img,
  .split-image-block img{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:16/10!important;
    object-fit:cover!important;
  }
  .split-image,
  .service-thumb,
  .partner-testimonials__image-wrap,
  .map-visual,
  .map-placeholder{
    min-height:220px!important;
  }
  .cta-panel,
  .destination-split-panel,
  .form-box,
  .redgate-cf7-form.rg-form-shell,
  .partner-auth-panel,
  .contact-page-intro{
    padding:22px!important;
    border-radius:12px!important;
  }
  .cta-actions,
  .hero-actions,
  .program-actions,
  .intro .hero-actions .wp-block-buttons,
  .cta-actions.wp-block-buttons{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:10px!important;
    width:100%!important;
  }
  .btn,
  .wp-block-button__link,
  .program-actions .btn,
  .cta-actions .btn,
  .hero-actions .btn,
  .rg-submit-btn,
  .wpcf7-form .wpcf7-submit{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    justify-content:center!important;
    text-align:center!important;
    white-space:normal!important;
    box-sizing:border-box!important;
  }
  .wpcf7-form input,
  .wpcf7-form select,
  .wpcf7-form textarea,
  .rg-input,
  .rg-select,
  .rg-textarea,
  .form-control input,
  .form-control select,
  .form-control textarea{
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  .site-footer{
    padding-top:42px!important;
  }
  .footer-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:24px!important;
  }
  .footer-bottom{
    flex-direction:column!important;
    align-items:flex-start!important;
  }
}

@media(max-width:680px){
  h1,
  .hero-badge .hero-title,
  .hero-badge h1,
  .hero-badge h2{
    font-size:clamp(25px,8vw,32px)!important;
    line-height:1.12!important;
    word-break:normal!important;
    overflow-wrap:anywhere!important;
  }
  h2{
    font-size:clamp(24px,7vw,30px)!important;
    line-height:1.16!important;
  }
  h3,
  .case-project-card h3,
  .destination-detail-image-card h3,
  .attraction-showcase-card h3,
  .cultural-experience-card h3{
    font-size:clamp(20px,6vw,24px)!important;
    line-height:1.2!important;
  }
  body .wp-block-cover.hero-cover,
  body .wp-block-cover.hero-cover.alignfull,
  .hero-cover.hero-image,
  .hero-image,
  .destination-detail-hero.hero-cover.hero-image{
    height:390px!important;
    min-height:390px!important;
  }
  .hero-badge,
  .destination-detail-hero .hero-badge{
    left:18px!important;
    right:18px!important;
    bottom:32px!important;
    max-width:none!important;
    width:auto!important;
    padding:14px 16px!important;
    box-sizing:border-box!important;
  }
  .hero-badge .hero-label,
  .hero-badge p:first-child{
    font-size:11px!important;
    letter-spacing:.08em!important;
  }
  .hero-badge .hero-kicker,
  .hero-badge .hero-summary,
  .hero-badge .hero-note,
  .destination-detail-hero .hero-summary{
    display:none!important;
  }
  .section,
  .section-alt,
  .section-stone,
  .intro,
  .subpage-intro{
    padding-top:42px!important;
    padding-bottom:42px!important;
  }
  .program-card,
  .home-service-card,
  .service-image-card,
  .destination-overview-card,
  .destination-detail-image-card,
  .attraction-showcase-card,
  .cultural-experience-card,
  .case-project-card,
  .case-document-section,
  .destination-split-panel,
  .cta-panel{
    border-radius:8px!important;
  }
  .program-body,
  .home-service-card>div,
  .service-image-card>div,
  .destination-overview-card>div,
  .destination-detail-image-card>div,
  .attraction-showcase-card>div,
  .destination-followup-card>div{
    padding:18px!important;
  }
  .destination-detail-image-card img,
  .attraction-showcase-card img,
  .cultural-experience-card img,
  .service-image-card>img,
  .destination-overview-card>img,
  .home-service-card__image{
    aspect-ratio:4/3!important;
  }
  .destination-overview-fact-grid article,
  .destination-detail-text-card,
  .destination-itinerary-card,
  .destination-hotel-card,
  .destination-combine-card,
  .case-fact-card,
  .case-document-section{
    padding:18px!important;
  }
  .destination-cta-section .cta-panel ul,
  .destination-best-for ul{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  .redgate-floating-contact{
    right:12px!important;
    bottom:12px!important;
  }
  .float-btn{
    width:48px!important;
    height:48px!important;
    min-width:48px!important;
  }
}

@media(max-width:420px){
  .wp-block-group.container,
  .container{
    padding-left:14px!important;
    padding-right:14px!important;
  }
  body .wp-block-cover.hero-cover,
  body .wp-block-cover.hero-cover.alignfull,
  .hero-cover.hero-image,
  .hero-image,
  .destination-detail-hero.hero-cover.hero-image{
    height:360px!important;
    min-height:360px!important;
  }
  .hero-badge,
  .destination-detail-hero .hero-badge{
    left:14px!important;
    right:14px!important;
    bottom:24px!important;
  }
  .section-head{
    margin-bottom:22px!important;
  }
  .program-body,
  .home-service-card>div,
  .service-image-card>div,
  .destination-overview-card>div,
  .destination-detail-image-card>div,
  .attraction-showcase-card>div,
  .destination-followup-card>div,
  .cta-panel,
  .destination-split-panel,
  .form-box,
  .redgate-cf7-form.rg-form-shell,
  .partner-auth-panel,
  .contact-page-intro{
    padding:16px!important;
  }
  .btn,
  .wp-block-button__link,
  .rg-submit-btn,
  .wpcf7-form .wpcf7-submit{
    min-height:48px!important;
    padding:12px 14px!important;
    font-size:14px!important;
  }
}

/* Mobile completion pass for shared WordPress/theme modules. */
@media(max-width:900px){
  .utility .container{
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    padding-top:8px!important;
    padding-bottom:8px!important;
    text-align:center!important;
  }
  .utility-right{
    display:flex!important;
    flex-wrap:wrap!important;
    justify-content:center!important;
    gap:8px 14px!important;
  }
  .header-inner{
    height:70px!important;
  }
  .logo img{
    max-width:190px!important;
    height:auto!important;
  }
  .dashboard-hero,
  .dashboard-layout,
  .drive-card,
  .dashboard-card-head,
  .portal-locked-card,
  .partner-auth-grid,
  .theme-lines div,
  .two-col-list{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:18px!important;
  }
  .dashboard-sidebar,
  .dashboard-stat-grid,
  .auth-feature-list{
    display:grid!important;
    grid-template-columns:1fr!important;
  }
  .dashboard-sidebar,
  .contact-card{
    position:static!important;
  }
  .dashboard-actions{
    justify-content:stretch!important;
  }
  .dashboard-actions .btn,
  .portal-locked-card .btn{
    width:100%!important;
    justify-content:center!important;
  }
  .timeline{
    max-width:100%!important;
  }
  .step{
    padding-left:66px!important;
  }
  .step-num{
    width:48px!important;
    height:48px!important;
  }
  .timeline:before{
    left:23px!important;
  }
  .list-links,
  .arrange-cloud,
  .map-city-list{
    justify-content:flex-start!important;
  }
  .list-links .pill,
  .arrange-cloud span,
  .map-city-list a{
    width:100%!important;
    box-sizing:border-box!important;
  }
  .wp-block-table,
  figure.wp-block-table{
    display:block!important;
    width:100%!important;
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch!important;
  }
  table{
    max-width:100%!important;
  }
  .redgate-access-modal{
    padding:16px!important;
  }
  .redgate-access-modal__dialog{
    width:100%!important;
    max-width:620px!important;
    max-height:calc(100vh - 32px)!important;
    overflow:auto!important;
  }
}

@media(max-width:680px){
  .utility{
    font-size:12px!important;
  }
  .utility-right a{
    font-size:12px!important;
  }
  .logo img{
    max-width:152px!important;
  }
  .auth-tabs{
    grid-template-columns:1fr!important;
  }
  .dashboard-hero,
  .sidebar-card,
  .dashboard-card,
  .portal-locked-card,
  .partner-auth-panel{
    padding:20px!important;
    border-radius:10px!important;
  }
  .dashboard-hero h1,
  .partner-auth-copy h1,
  .portal-top h1{
    font-size:clamp(28px,8vw,34px)!important;
  }
  .redgate-access-modal{
    align-items:flex-end!important;
  }
  .redgate-access-modal__dialog{
    padding:24px!important;
    border-radius:12px!important;
  }
}

/* 2026-08-06 refined ivory and deep-red visual system */
:root{
  --navy:#222222;
  --navy-2:#333333;
  --teal:#C5A46D;
  --teal-dark:#A88A55;
  --orange:#b92a22;
  --orange-dark:#A51C30;
  --sand:#F8F5EF;
  --stone:#F8F5EF;
  --ink:#222222;
  --muted:#5f5b54;
  --line:#e4d8c8;
  --white:#ffffff;
  --shadow:0 18px 42px rgba(34,34,34,.10);
}
body{
  color:#222222;
  background:#F8F5EF;
}
h1,h2,h3,
.section-head h2,
.wp-block-heading{
  color:#222222;
}
.section-alt,
.section-stone,
.partner-dashboard,
.portal-locked{
  background:#F8F5EF!important;
}
.site-header,
.program-card,
.home-service-card,
.destination-detail-text-card,
.destination-detail-image-card,
.destination-overview-fact-grid article,
.destination-combine-card,
.case-project-card,
.case-document-section,
.icon-card,
.form-box,
.redgate-cf7-form,
.redgate-contact-card,
.download-resource-grid article{
  border-color:#e4d8c8!important;
}
.btn-primary,
.wp-block-button.btn-primary .wp-block-button__link,
.wpcf7-form .wpcf7-submit,
.rg-submit-btn{
  background:#A51C30!important;
  color:#fff!important;
  box-shadow:0 12px 24px rgba(165,28,48,.18)!important;
}
.btn-primary:hover,
.wp-block-button.btn-primary .wp-block-button__link:hover,
.wpcf7-form .wpcf7-submit:hover,
.rg-submit-btn:hover{
  background:#8f1829!important;
}
.btn-dark,
.wp-block-button.btn-dark .wp-block-button__link{
  background:#222222!important;
  color:#fff!important;
}
.btn-ghost,
.wp-block-button.btn-ghost .wp-block-button__link{
  color:#222222!important;
  border-color:#C5A46D!important;
}
.kicker,
.program-meta,
.hero-badge .hero-label,
.destination-detail-image-card strong,
.case-fact-card span{
  color:#b92a22!important;
}
.kicker:before,
.kicker:after,
.main-nav a:after{
  background:#C5A46D!important;
}
.hero-badge,
.city-tile,
.case-project-card,
.destination-detail-text-card,
.destination-combine-card,
.locked{
  border-left-color:#b92a22!important;
}
.utility,
.site-footer{
  background:#222222!important;
}
.home-hero-carousel{
  overflow:hidden;
  background:#222;
}
.home-hero-carousel>.wp-block-cover__image-background{
  opacity:0;
}
.home-hero-slides{
  position:absolute;
  inset:0;
  z-index:0;
}
.home-hero-slides span{
  position:absolute;
  inset:0;
  background-size:cover;
  background-position:center;
  opacity:0;
  transform:scale(1.04);
  animation:redgateHeroCarousel 18s infinite;
}
.home-hero-slides span:nth-child(2){animation-delay:6s}
.home-hero-slides span:nth-child(3){animation-delay:12s}
.home-hero-carousel.is-manual .home-hero-slides span{
  animation:none;
  opacity:0;
  transform:scale(1.03);
  transition:opacity .55s ease, transform 2.2s ease;
}
.home-hero-carousel.is-manual .home-hero-slides span.is-active{
  opacity:1;
  transform:scale(1);
}
.home-hero-carousel .wp-block-cover__background,
.home-hero-carousel .wp-block-cover__inner-container{
  position:relative;
  z-index:2;
}
.home-hero-controls{
  position:absolute;
  left:50%;
  bottom:30px;
  z-index:5;
  transform:translateX(-50%);
  display:flex;
  align-items:center;
  gap:9px;
  background:rgba(248,245,239,.86);
  border:1px solid rgba(197,164,109,.56);
  border-radius:999px;
  padding:8px 10px;
  box-shadow:0 14px 34px rgba(34,34,34,.18);
}
.home-hero-controls button{
  appearance:none;
  border:0;
  cursor:pointer;
}
.home-hero-prev,
.home-hero-next{
  width:34px;
  height:34px;
  border-radius:50%;
  background:#A51C30;
  color:#fff;
  display:grid;
  place-items:center;
  font-size:24px;
  line-height:1;
}
.home-hero-dot{
  width:10px;
  height:10px;
  border-radius:50%;
  background:#C5A46D;
  opacity:.5;
  padding:0;
}
.home-hero-dot.is-active{
  width:24px;
  border-radius:999px;
  background:#A51C30;
  opacity:1;
}
@keyframes redgateHeroCarousel{
  0%,30%{opacity:1;transform:scale(1)}
  36%,100%{opacity:0;transform:scale(1.06)}
}
.home-destinations-section .city-tile,
.destinations-overview-section .city-tile{
  position:relative;
  padding:20px 20px 56px;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.home-destinations-section .city-tile:hover,
.destinations-overview-section .city-tile:hover{
  transform:translateY(-3px);
  border-color:#C5A46D!important;
  box-shadow:0 18px 34px rgba(34,34,34,.10);
}
.home-destinations-section .city-tile h3 a,
.destinations-overview-section .city-tile h3 a{
  display:block;
}
.home-destinations-section .city-tile h3 a:after,
.destinations-overview-section .city-tile h3 a:after{
  content:"View destination";
  position:absolute;
  left:20px;
  bottom:18px;
  color:#A51C30;
  font:800 13px/1 Arial,Helvetica,sans-serif;
  border-bottom:2px solid #C5A46D;
  padding-bottom:4px;
}
.destination-detail-hero .hero-badge{
  background:rgba(248,245,239,.94)!important;
}
.destination-overview-section .destination-overview-fact-grid{
  grid-template-columns:1.15fr .85fr 1fr!important;
}
.destination-why-visit-section .destination-detail-text-grid,
.destination-local-experiences-section .destination-detail-image-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
.destination-top-attractions-section .destination-detail-image-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
.destination-top-attractions-section .destination-detail-image-card:nth-child(even){
  transform:translateY(28px);
}
.destination-mice-layout{
  display:grid;
  grid-template-columns:minmax(320px,.92fr) minmax(0,1.08fr);
  gap:34px;
  align-items:stretch;
  background:#fff;
  border:1px solid #e4d8c8;
  box-shadow:var(--shadow);
  border-radius:10px;
  overflow:hidden;
}
.destination-transport-layout{
  display:grid;
  grid-template-columns:minmax(320px,.92fr) minmax(0,1.08fr);
  gap:34px;
  align-items:stretch;
  background:#fff;
  border:1px solid #e4d8c8;
  box-shadow:var(--shadow);
  border-radius:10px;
  overflow:hidden;
}
.destination-transport-layout figure{
  margin:0;
  min-height:360px;
}
.destination-transport-layout img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.destination-transport-layout>div{
  padding:34px;
  align-self:center;
}
.destination-transport-layout ul{
  display:grid;
  gap:10px;
  padding-left:20px;
}
.destination-mice-layout figure{
  margin:0;
  min-height:360px;
}
.destination-mice-layout img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.destination-mice-layout>div{
  padding:34px;
  align-self:center;
}
.destination-mice-layout ul,
.destination-split-panel ul{
  display:grid;
  gap:10px;
}
.destination-route-card{
  position:relative;
  min-height:190px;
  padding:24px!important;
  background:linear-gradient(135deg,#fff 0%,#fff 66%,#fbf4ea 100%)!important;
}
.destination-route-card span{
  display:inline-flex;
  color:#A51C30;
  font-weight:900;
  border:1px solid #C5A46D;
  padding:6px 10px;
  margin-bottom:14px;
}
.destination-route-card strong{
  display:block;
  color:#5f5b54;
  margin-top:12px;
  line-height:1.5;
}
.case-source-panel{
  background:#fff;
  border:1px solid #e4d8c8;
  border-top:5px solid #C5A46D;
  box-shadow:var(--shadow);
  border-radius:10px;
  padding:34px;
}
.case-source-panel .section-head{
  text-align:left;
  margin-left:0;
}
.case-detail-hero .case-hero-card{
  max-width:780px!important;
  width:min(780px,calc(100% - 88px))!important;
  padding:34px 38px!important;
  bottom:72px!important;
  background:rgba(248,245,239,.94)!important;
  border-left:6px solid #b92a22!important;
  border-top:1px solid rgba(197,164,109,.55)!important;
  border-right:1px solid rgba(197,164,109,.35)!important;
  border-bottom:1px solid rgba(197,164,109,.35)!important;
  box-shadow:0 26px 70px rgba(34,34,34,.22)!important;
  backdrop-filter:blur(8px);
}
.case-detail-hero .case-hero-card .hero-title{
  font-size:42px!important;
  line-height:1.08!important;
  max-width:720px;
}
.case-detail-hero .case-hero-card .hero-summary{
  max-width:690px!important;
  margin-top:16px!important;
  color:#3f3b35!important;
  font-size:17px!important;
  line-height:1.65!important;
}
.case-detail-hero .case-hero-card .hero-kicker{
  color:#A51C30!important;
  font-size:14px!important;
  font-weight:900!important;
  line-height:1.55!important;
  margin-top:12px!important;
}
.case-detail-hero .case-hero-card .hero-actions{
  margin-top:22px!important;
}
.case-detail-section,
.case-detail-gallery-section{
  position:relative;
  overflow:hidden;
}
.case-overview-section,
.case-prose-section,
.case-services-section,
.case-outcome-section{
  background:#F8F5EF!important;
}
.case-background-section,
.case-challenges-section,
.case-partner-section{
  background:linear-gradient(180deg,#fff 0%,#F8F5EF 100%)!important;
}
.case-detail-section>.container,
.case-detail-gallery-section>.container,
.case-detail-section>.wp-block-group.container,
.case-detail-gallery-section>.wp-block-group.container{
  position:relative;
}
.case-detail-section .section-head{
  max-width:760px;
  margin-bottom:32px;
}
.case-detail-section .section-head .kicker,
.case-detail-gallery-section .kicker{
  color:#A51C30!important;
}
.case-detail-section .section-head h2,
.case-detail-gallery-section h2{
  color:#222222;
}
.case-overview-panel,
.case-prose-panel{
  max-width:920px;
  margin:0 auto 0 0;
  position:relative;
  padding:34px 0 34px 34px;
  border-left:4px solid #C5A46D;
}
.case-overview-panel{
  max-width:1040px;
  padding:38px 42px;
  background:linear-gradient(135deg,#fff 0%,#fff 58%,#fbf1e9 100%);
  border:1px solid #e4d8c8;
  border-left:5px solid #b92a22;
  border-radius:8px;
  box-shadow:0 18px 45px rgba(34,34,34,.07);
}
.case-overview-panel:before,
.case-prose-panel:before{
  content:"";
  position:absolute;
  left:34px;
  right:auto;
  top:0;
  width:86px;
  height:2px;
  background:#C5A46D;
}
.case-overview-panel:before{
  left:42px;
  top:22px;
}
.case-prose-panel h2{
  margin:0 0 14px;
  color:#222222;
  font-size:34px;
  line-height:1.16;
}
.case-prose-panel p:not(.kicker){
  color:#5f5b54;
  line-height:1.78;
  margin:0 0 12px;
}
.case-background-section .section-head{
  text-align:left;
  margin-left:0;
}
.case-background-table{
  width:100%;
  background:#fff;
  border:1px solid #e4d8c8;
  border-radius:8px;
  box-shadow:0 14px 36px rgba(34,34,34,.06);
  overflow:hidden;
}
.case-background-row{
  display:grid;
  grid-template-columns:240px 1fr;
  gap:24px;
  padding:16px 22px;
  border-bottom:1px solid #eee7df;
}
.case-background-row:nth-child(even){
  background:#fbf8f2;
}
.case-background-row:last-child{
  border-bottom:0;
}
.case-background-row span{
  color:#A51C30;
  font-size:13px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.case-background-row strong{
  color:#3f3b35;
  font-size:14px;
  font-weight:700;
  line-height:1.55;
}
.case-check-list,
.case-feature-list{
  list-style:none;
  padding:0;
  margin:18px 0 0;
}
.case-check-list{
  display:grid;
  gap:8px;
}
.case-check-list li{
  position:relative;
  color:#5f5b54;
  line-height:1.62;
  padding-left:28px;
}
.case-check-list li:before{
  content:"\2713";
  position:absolute;
  left:0;
  top:.1em;
  display:grid;
  place-items:center;
  width:17px;
  height:17px;
  border-radius:50%;
  background:#f4e6df;
  color:#A51C30;
  font-size:11px;
  font-weight:900;
}
.case-feature-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  max-width:1040px;
}
.case-feature-list li{
  display:grid;
  gap:7px;
  padding:18px 18px 18px 20px;
  background:#fff;
  border:1px solid #e7ded2;
  border-left:4px solid #C5A46D;
  border-radius:6px;
}
.case-feature-list strong{
  color:#222222;
  font-weight:900;
}
.case-feature-list span{
  color:#5f5b54;
  line-height:1.65;
}
.case-services-section .section-head,
.case-challenges-section .section-head{
  text-align:left;
  margin-left:0;
}
.case-service-group-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:20px;
  align-items:stretch;
}
.case-service-card{
  position:relative;
  background:#fff;
  border:1px solid #e4d8c8;
  border-top:0;
  border-radius:8px;
  padding:28px 22px 24px;
  box-shadow:0 16px 38px rgba(34,34,34,.07);
  overflow:hidden;
  transition:transform .18s ease,box-shadow .18s ease;
}
.case-service-card:before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  right:0;
  height:5px;
  background:linear-gradient(90deg,#b92a22 0%,#C5A46D 100%);
}
.case-service-card h3{
  margin:0 0 14px;
  color:#222222;
  font-size:21px;
  line-height:1.2;
}
.case-service-card:hover,
.case-challenge-card:hover{
  transform:translateY(-3px);
  box-shadow:0 22px 48px rgba(34,34,34,.1);
}
.case-challenge-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
}
.case-challenge-card{
  position:relative;
  background:#fff;
  border:1px solid #e4d8c8;
  border-radius:8px;
  padding:30px 26px 26px;
  box-shadow:0 16px 38px rgba(34,34,34,.07);
  transition:transform .18s ease,box-shadow .18s ease;
}
.case-challenge-card:before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:5px;
  background:linear-gradient(180deg,#b92a22 0%,#C5A46D 100%);
  border-radius:8px 0 0 8px;
}
.case-challenge-card h3{
  margin:0 0 18px;
  color:#222222;
  font-size:23px;
  line-height:1.22;
}
.case-challenge-card div{
  border-top:1px solid #eee7df;
  padding-top:14px;
  margin-top:14px;
}
.case-challenge-card div strong{
  display:block;
  color:#A51C30;
  font-size:13px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
  margin-bottom:6px;
}
.case-challenge-card p:not(.kicker){
  color:#5f5b54;
  line-height:1.68;
  margin:0;
}
.case-outcome-section .case-outcome-copy{
  margin-bottom:30px;
  max-width:980px;
}
.case-prose-stack{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:28px;
  align-items:start;
}
.case-prose-panel-compact{
  max-width:none;
  background:#fff;
  border:1px solid #e4d8c8;
  border-left:5px solid #C5A46D;
  border-radius:8px;
  padding:30px 30px 32px;
  box-shadow:0 16px 38px rgba(34,34,34,.06);
}
.case-prose-panel-compact:before{
  display:none;
}
.case-outcome-section .case-gallery-carousel{
  background:#fff;
  border:1px solid #e4d8c8;
  border-radius:10px;
  padding:18px;
  box-shadow:0 18px 45px rgba(34,34,34,.07);
}
.case-gallery-carousel{
  overflow:hidden;
  width:100%;
}
.case-gallery-track{
  display:flex;
  gap:18px;
  width:max-content;
  animation:redgateCaseGallery 18s linear infinite;
}
.case-gallery-carousel:hover .case-gallery-track{
  animation-play-state:paused;
}
.case-gallery-item{
  flex:0 0 calc((1180px - 36px)/3);
  max-width:calc((1180px - 36px)/3);
  margin:0;
}
.case-gallery-item img{
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
  border-radius:8px;
  border:1px solid #e4d8c8;
  box-shadow:0 8px 22px rgba(34,34,34,.08);
}
@keyframes redgateCaseGallery{
  0%,18%{transform:translateX(0)}
  28%,46%{transform:translateX(calc(-1 * ((1180px - 36px)/3 + 18px)))}
  56%,74%{transform:translateX(calc(-2 * ((1180px - 36px)/3 + 18px)))}
  84%,100%{transform:translateX(0)}
}
.split-image-block figcaption:empty{
  display:none;
}
.text-block>h2,
.services-overview-section h2,
.service-image-grid h3{
  text-align:center;
  font-weight:900;
}
.service-list.service-box-grid p{
  font-weight:400!important;
  line-height:1.48;
}
.service-list.service-box-grid p strong{
  display:block;
  font-weight:900!important;
  color:#222222;
  min-height:1.25em;
}
.service-list.service-box-grid p small{
  display:block;
  font-weight:400!important;
  color:#5f5b54;
  margin-top:6px;
}
.icon-grid .icon-card{
  padding:22px!important;
  min-height:auto!important;
}
.icon-grid .icon-card h3{
  font-size:21px;
}
.top-attractions-section .attraction-showcase-card h4,
.top-attractions-section .attraction-showcase-card ul{
  display:none!important;
}
.local-cultural-experiences-section .section-head .kicker{
  color:#C5A46D!important;
}
.download-resource-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.download-resource-grid article{
  background:#fff;
  border:1px solid #e4d8c8;
  border-left:4px solid #C5A46D;
  border-radius:8px;
  padding:18px;
  display:grid;
  gap:14px;
  align-content:space-between;
}
.download-resource-grid h3{
  font-size:20px;
}
.download-resource-grid .btn{
  width:auto;
  min-height:0!important;
  justify-self:start;
  padding:9px 12px!important;
  font-size:12px!important;
  border-radius:4px;
}
.office-support-section .section-head .kicker{
  color:#A51C30!important;
}
@media(max-width:1180px){
  .case-detail-hero .case-hero-card{
    max-width:720px!important;
    width:calc(100% - 56px)!important;
  }
  .case-service-group-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .case-prose-stack{
    grid-template-columns:1fr;
  }
  .case-gallery-item{
    flex-basis:calc((100vw - 80px)/3);
    max-width:calc((100vw - 80px)/3);
  }
}
@media(max-width:900px){
  .destination-overview-section .destination-overview-fact-grid,
  .destination-why-visit-section .destination-detail-text-grid,
  .destination-local-experiences-section .destination-detail-image-grid,
  .destination-top-attractions-section .destination-detail-image-grid,
  .destination-mice-layout,
  .destination-transport-layout,
  .download-resource-grid{
    grid-template-columns:1fr!important;
  }
  .case-challenge-grid{
    grid-template-columns:1fr;
  }
  .case-feature-list{
    grid-template-columns:1fr;
  }
  .case-background-row{
    grid-template-columns:180px 1fr;
  }
  .destination-top-attractions-section .destination-detail-image-card:nth-child(even){
    transform:none;
  }
  .destination-mice-layout figure{
    min-height:260px;
  }
  .destination-transport-layout figure{
    min-height:240px;
  }
  .case-gallery-track{
    animation:none;
    width:100%;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    padding-bottom:8px;
  }
  .download-resource-grid .btn{
    width:auto!important;
    min-height:0!important;
    padding:9px 12px!important;
    font-size:12px!important;
  }
  .case-gallery-item{
    flex:0 0 82%;
    max-width:82%;
    scroll-snap-align:start;
  }
}
@media(max-width:680px){
  .case-detail-hero .case-hero-card{
    width:auto!important;
    padding:16px 18px!important;
  }
  .case-detail-hero .case-hero-card .hero-title{
    font-size:clamp(24px,7vw,31px)!important;
  }
  .case-service-group-grid{
    grid-template-columns:1fr;
  }
  .case-background-row{
    grid-template-columns:1fr;
    gap:4px;
    padding:13px 0;
  }
  .case-prose-panel h2{
    font-size:clamp(24px,7vw,30px)!important;
  }
  .case-overview-panel,
  .case-prose-panel,
  .case-prose-panel-compact{
    padding:24px 20px!important;
    border-left-width:4px;
  }
  .case-overview-panel:before,
  .case-prose-panel:before{
    left:20px;
    top:14px;
    width:64px;
  }
  .home-hero-carousel{
    height:420px!important;
    min-height:420px!important;
  }
  .destination-mice-layout>div,
  .destination-transport-layout>div,
  .case-source-panel{
    padding:20px;
  }
  .home-hero-controls{
    bottom:18px;
  }
  .home-hero-prev,
  .home-hero-next{
    width:30px;
    height:30px;
    font-size:20px;
  }
  .case-gallery-item{
    flex-basis:88%;
    max-width:88%;
  }
}

/* 2026-08-06 final layout polish requested by client */
.destination-transport-section .destination-transport-panel{
  display:grid!important;
  grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr)!important;
  gap:30px!important;
  align-items:start!important;
  background:#fff!important;
  border:1px solid #e4d8c8!important;
  border-left:5px solid #b92a22!important;
  border-radius:10px!important;
  box-shadow:0 16px 34px rgba(34,34,34,.08)!important;
}
.destination-transport-section .destination-transport-panel ul{
  margin:0!important;
  padding-left:20px!important;
  display:grid!important;
  gap:10px!important;
}
.destination-top-attractions-section .destination-detail-image-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:22px!important;
  align-items:stretch!important;
}
.destination-top-attractions-section .destination-detail-image-card{
  display:grid!important;
  grid-template-rows:220px 1fr!important;
  background:#fff!important;
  border:1px solid #e4d8c8!important;
  border-radius:10px!important;
  overflow:hidden!important;
  box-shadow:0 14px 30px rgba(34,34,34,.08)!important;
  transform:none!important;
}
.destination-top-attractions-section .destination-detail-image-card:first-child{
  grid-column:span 2!important;
}
.destination-top-attractions-section .destination-detail-image-card img{
  width:100%!important;
  height:220px!important;
  aspect-ratio:auto!important;
  object-fit:cover!important;
}
.destination-top-attractions-section .destination-detail-image-card:first-child img{
  height:260px!important;
}
.destination-top-attractions-section .destination-detail-image-card>div{
  padding:20px!important;
}
.destination-top-attractions-section .destination-detail-image-card h3{
  font-size:23px!important;
}
.home-destinations-section .city-tile,
.destinations-overview-section .city-tile{
  padding:20px!important;
  display:grid!important;
  gap:8px!important;
  align-content:start!important;
}
.home-destinations-section .city-tile h3,
.destinations-overview-section .city-tile h3{
  margin:0 0 4px!important;
}
.home-destinations-section .city-tile h3 a:after,
.destinations-overview-section .city-tile h3 a:after{
  content:"View destination";
  position:static!important;
  display:inline-flex!important;
  width:max-content!important;
  margin-left:10px!important;
  vertical-align:middle!important;
  color:#A51C30!important;
  background:#F8F5EF!important;
  border:1px solid #C5A46D!important;
  border-radius:999px!important;
  padding:5px 8px!important;
  font:800 11px/1 Arial,Helvetica,sans-serif!important;
}
.office-support-section .office-support-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:16px!important;
  max-width:none!important;
  align-items:stretch!important;
}
.office-support-section .office-support-grid article{
  background:#fff!important;
  border:1px solid #e4d8c8!important;
  border-left:4px solid #C5A46D!important;
  border-radius:8px!important;
  padding:20px!important;
  min-height:150px!important;
}
.office-support-section .office-support-grid h3,
.office-support-section .office-support-grid p{
  text-align:center!important;
}
.download-resource-grid article{
  text-align:center!important;
  justify-items:center!important;
  align-content:center!important;
}
.download-resource-grid h3{
  text-align:center!important;
  margin:0!important;
}
.download-resource-grid .btn{
  justify-self:center!important;
  min-width:118px!important;
  width:auto!important;
}
@media(max-width:1100px){
  .office-support-section .office-support-grid,
  .destination-top-attractions-section .destination-detail-image-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:900px){
  .destination-transport-section .destination-transport-panel,
  .destination-top-attractions-section .destination-detail-image-grid,
  .office-support-section .office-support-grid{
    grid-template-columns:1fr!important;
  }
  .destination-top-attractions-section .destination-detail-image-card:first-child{
    grid-column:auto!important;
  }
}
@media(max-width:680px){
  .home-destinations-section .city-tile h3 a:after,
  .destinations-overview-section .city-tile h3 a:after{
    display:flex!important;
    margin:8px 0 0!important;
  }
}

/* 2026-08-06 destination detail and home city-card refinement */
.destination-detail-hero .hero-actions{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
  width:min(520px,100%)!important;
  justify-content:stretch!important;
}
.destination-detail-hero .hero-actions .btn{
  width:100%!important;
  min-width:0!important;
  white-space:normal!important;
  text-align:center!important;
}
.destination-top-attractions-section .destination-detail-image-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:18px!important;
}
.destination-top-attractions-section .destination-detail-image-card,
.destination-top-attractions-section .destination-detail-image-card:first-child{
  grid-column:auto!important;
  grid-template-rows:170px 1fr!important;
}
.destination-top-attractions-section .destination-detail-image-card img,
.destination-top-attractions-section .destination-detail-image-card:first-child img{
  height:170px!important;
}
.destination-top-attractions-section .destination-detail-image-card>div{
  padding:18px!important;
}
.destination-top-attractions-section .destination-detail-image-card h3{
  font-size:21px!important;
}
.destination-transport-section .destination-transport-layout--text-image{
  display:grid!important;
  grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr)!important;
  gap:34px!important;
  align-items:stretch!important;
  background:#fff!important;
  border:1px solid #e4d8c8!important;
  border-left:5px solid #b92a22!important;
  border-radius:10px!important;
  box-shadow:0 16px 34px rgba(34,34,34,.08)!important;
  overflow:hidden!important;
}
.destination-transport-section .destination-transport-layout--text-image>div{
  padding:34px!important;
  align-self:center!important;
}
.destination-transport-section .destination-transport-layout--text-image figure{
  order:2!important;
  margin:0!important;
  min-height:360px!important;
}
.destination-transport-section .destination-transport-layout--text-image img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
.destination-transport-section .destination-transport-layout--text-image ul{
  display:grid!important;
  gap:10px!important;
  padding-left:20px!important;
}
.home-destinations-section .city-tile,
.destinations-overview-section .city-tile{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:10px!important;
  padding:22px!important;
  min-height:250px!important;
  text-align-last: center;
}
.home-destinations-section .city-tile h3,
.destinations-overview-section .city-tile h3{
  width:100%!important;
  margin:0!important;
}
.home-destinations-section .city-tile h3 a,
.destinations-overview-section .city-tile h3 a{
  display:block!important;
}
.home-destinations-section .city-tile h3 a:after,
.destinations-overview-section .city-tile h3 a:after{
  content:none!important;
  display:none!important;
}
.home-destinations-section .city-tile p,
.destinations-overview-section .city-tile p{
  margin:0!important;
  color:white!important;
  line-height:1.45!important;
  flex:1 1 auto!important;
  align-content: center;
    width: 100%;
  
}
.home-destinations-section .city-tile .city-tile-btn,
.destinations-overview-section .city-tile .city-tile-btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin-top:auto!important;
  min-height:38px!important;
  padding:10px 14px!important;
  border-radius:4px!important;
  background:#A51C30!important;
  color:#fff!important;
  font:800 13px/1 Arial,Helvetica,sans-serif!important;
  box-shadow:0 10px 20px rgba(165,28,48,.16)!important;
}
.home-destinations-section .city-tile .city-tile-btn:hover,
.destinations-overview-section .city-tile .city-tile-btn:hover{
  background:#8f1829!important;
  transform:translateY(-1px)!important;
}
@media(max-width:1180px){
  .destination-top-attractions-section .destination-detail-image-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:900px){
  .destination-transport-section .destination-transport-layout--text-image{
    grid-template-columns:1fr!important;
  }
  .destination-transport-section .destination-transport-layout--text-image figure{
    min-height:260px!important;
  }
}
@media(max-width:680px){
  .destination-top-attractions-section .destination-detail-image-grid{
    grid-template-columns:1fr!important;
  }
  .destination-detail-hero .hero-actions{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  .destination-detail-hero .hero-actions .btn{
    min-height:48px!important;
    padding:11px 10px!important;
    font-size:12px!important;
  }
}

/* 2026-08-07 city overview + why visit merged showcase */
.destination-overview-showcase-section{
  background:#F8F5EF!important;
}
.destination-overview-showcase-section .section-head{
  margin-bottom:28px!important;
}
.destination-overview-showcase-section .section-head h2{
  margin-bottom:10px!important;
}
.destination-overview-showcase{
  display:grid!important;
  gap:26px!important;
}
.destination-overview-card-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:16px!important;
}
.destination-overview-card{
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr)!important;
  gap:14px!important;
  align-items:start!important;
  min-height:132px!important;
  padding:22px!important;
  background:#fff!important;
  border:1px solid #eadfd1!important;
  border-radius:6px!important;
  box-shadow:0 12px 28px rgba(34,34,34,.07)!important;
}
.destination-overview-showcase-card .overview-card-icon{
  width:30px!important;
  height:30px!important;
  border:2px solid #A51C30!important;
  border-radius:8px!important;
  display:grid!important;
  place-items:center!important;
  color:#A51C30!important;
  font:900 11px/1 Arial,Helvetica,sans-serif!important;
}
.destination-overview-showcase-card--calendar .overview-card-icon:before{content:"BT"}
.destination-overview-showcase-card--stay .overview-card-icon:before{content:"ST"}
.destination-overview-showcase-card--airport .overview-card-icon:before{content:"AP"}
.destination-overview-showcase-card--ideal .overview-card-icon:before{content:"IF"}
.destination-overview-showcase-card--star .overview-card-icon:before{content:"HL"}
.destination-overview-showcase-card--mice .overview-card-icon:before{content:"MI"}
.destination-overview-showcase-card strong{
  display:block!important;
  color:#A51C30!important;
  font:900 11px/1.2 Arial,Helvetica,sans-serif!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  margin-bottom:8px!important;
}
.destination-overview-showcase-card h3{
  color:#222!important;
  font-size:17px!important;
  line-height:1.28!important;
  margin:0 0 7px!important;
}
.destination-overview-showcase-card p{
  color:#5f5b54!important;
  font-size:13px!important;
  line-height:1.55!important;
  margin:0!important;
}
.destination-overview-reason-band{
  display:grid!important;
  grid-template-columns:150px minmax(240px,.8fr) minmax(0,1.2fr)!important;
  gap:28px!important;
  align-items:center!important;
  padding:28px!important;
  background:linear-gradient(90deg,#fff 0%,#fff 58%,#fbf2e6 100%)!important;
  border:1px solid #eadfd1!important;
  border-radius:8px!important;
  box-shadow:0 14px 34px rgba(34,34,34,.06)!important;
}
.destination-overview-reason-band figure{
  width:132px!important;
  height:132px!important;
  margin:0!important;
  border-radius:50%!important;
  overflow:hidden!important;
  border:6px solid #f1e5d7!important;
  box-shadow:0 16px 30px rgba(34,34,34,.12)!important;
}
.destination-overview-reason-band img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
.destination-overview-reason-copy .kicker{
  margin-bottom:10px!important;
  color:#A51C30!important;
}
.destination-overview-reason-copy p:not(.kicker){
  color:#5f5b54!important;
  margin:0!important;
  line-height:1.65!important;
}
.destination-overview-reason-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px 22px!important;
}
.destination-overview-reason-grid article{
  display:grid!important;
  grid-template-columns:34px minmax(0,1fr)!important;
  gap:12px!important;
  align-items:start!important;
}
.destination-overview-reason-grid article:nth-child(2) .overview-reason-icon:before{content:"02"}
.destination-overview-reason-grid article:nth-child(3) .overview-reason-icon:before{content:"03"}
.destination-overview-reason-grid article:nth-child(4) .overview-reason-icon:before{content:"04"}
.overview-reason-icon{
  width:28px!important;
  height:28px!important;
  border-radius:50%!important;
  border:1px solid #C5A46D!important;
  color:#A51C30!important;
  display:grid!important;
  place-items:center!important;
  font:900 10px/1 Arial,Helvetica,sans-serif!important;
}
.overview-reason-icon:before{
  content:"01";
}
.destination-overview-reason-grid h3{
  color:#222!important;
  font-size:15px!important;
  margin:0 0 5px!important;
}
.destination-overview-reason-grid p{
  color:#5f5b54!important;
  font-size:12px!important;
  line-height:1.5!important;
  margin:0!important;
}
@media(max-width:1080px){
  .destination-overview-card-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .destination-overview-reason-band{
    grid-template-columns:130px 1fr!important;
  }
  .destination-overview-reason-grid{
    grid-column:1/-1!important;
  }
}
@media(max-width:720px){
  .destination-overview-card-grid,
  .destination-overview-reason-grid{
    grid-template-columns:1fr!important;
  }
  .destination-overview-reason-band{
    grid-template-columns:1fr!important;
    text-align:left!important;
  }
  .destination-overview-reason-band figure{
    width:118px!important;
    height:118px!important;
  }
}

/* 2026-08-07 exact match pass for destination overview screenshot */
.destination-overview-showcase-section{
  padding:34px 0 52px!important;
  background:#F8F5EF!important;
}
.destination-overview-showcase-section .destination-overview-exact-container{
  max-width:1088px!important;
  padding-left:0!important;
  padding-right:0!important;
}
.destination-overview-exact-head{
  max-width:720px!important;
  margin:0 auto 30px!important;
  text-align:center!important;
}
.destination-overview-exact-head .kicker{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:12px!important;
  margin:0 0 6px!important;
  color:#A51C30!important;
  font:900 12px/1 Arial,Helvetica,sans-serif!important;
  letter-spacing:.08em!important;
}
.destination-overview-exact-head .kicker:before,
.destination-overview-exact-head .kicker:after{
  content:""!important;
  width:34px!important;
  height:1px!important;
  background:#C5A46D!important;
}
.destination-overview-exact-head h2{
  font-size:31px!important;
  line-height:1.08!important;
  margin:0 0 12px!important;
  color:#222!important;
}
.destination-overview-exact-head>p:not(.kicker){
  max-width:620px!important;
  margin:0 auto!important;
  color:#4f4b45!important;
  font-size:13px!important;
  line-height:1.7!important;
}
.destination-overview-showcase{
  display:block!important;
}
.destination-overview-card-grid{
  display:grid!important;
  grid-template-columns:repeat(3,1fr)!important;
  gap:14px!important;
  margin:0 0 30px!important;
}
.destination-overview-exact-card{
  display:flex!important;
  grid-template-columns:34px 1fr!important;
  gap:14px!important;
  min-height:126px!important;
  padding:18px 18px 16px!important;
  background:#fff!important;
  border:1px solid #eadfd3!important;
  border-radius:3px!important;
  box-shadow:0 10px 24px rgba(34,34,34,.08)!important;
}
.destination-overview-exact-card .overview-card-icon{
  width:24px!important;
  height:24px!important;
  margin-top:2px!important;
  color:#C42622!important;
  display:block!important;
  border:0!important;
}
.destination-overview-exact-card .overview-card-icon svg{
  width:24px!important;
  height:24px!important;
  display:block!important;
}
.destination-overview-exact-card strong{
  display:block!important;
  margin:0 0 8px!important;
  color:#7d7770!important;
  font:900 10px/1.1 Arial,Helvetica,sans-serif!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}
.destination-overview-exact-card h3{
  margin:0 0 6px!important;
  color:#111!important;
  font:900 13px/1.35 Arial,Helvetica,sans-serif!important;
  font-family:Arial,Helvetica,sans-serif!important;
}
.destination-overview-exact-card p{
  margin:0!important;
  color:#625d56!important;
  font-size:12px!important;
  line-height:1.65!important;
}
.destination-overview-reason-band{
  display:grid!important;
  grid-template-columns:130px 360px 1fr!important;
  gap:36px!important;
  align-items:center!important;
  min-height:174px!important;
  padding:22px 28px!important;
  background:#fbf3ea!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.destination-overview-reason-band figure{
  width:110px!important;
  height:110px!important;
  margin:0!important;
  border-radius:50%!important;
  overflow:hidden!important;
  border:0!important;
  box-shadow:none!important;
}
.destination-overview-reason-band figure img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
.destination-overview-reason-copy .kicker{
  display:block!important;
  margin:0 0 12px!important;
  color:#A51C30!important;
  font:900 12px/1.2 Arial,Helvetica,sans-serif!important;
  letter-spacing:.02em!important;
  text-transform:uppercase!important;
}
.destination-overview-reason-copy .kicker:before,
.destination-overview-reason-copy .kicker:after{
  display:none!important;
}
.destination-overview-reason-copy p:not(.kicker){
  max-width:350px!important;
  margin:0!important;
  color:#5f5b54!important;
  font-size:12px!important;
  line-height:1.7!important;
}
.destination-overview-reason-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:22px 34px!important;
}
.destination-overview-reason-grid article{
  display:flex!important;
  grid-template-columns:30px minmax(0,1fr)!important;
  gap:12px!important;
  align-items:start!important;
}
.destination-overview-reason-grid .overview-reason-icon{
  width:22px!important;
  height:22px!important;
  color:#C42622!important;
  border:0!important;
  display:block!important;
}
.destination-overview-reason-grid .overview-reason-icon:before{
  content:none!important;
}
.destination-overview-reason-grid .overview-reason-icon svg{
  width:22px!important;
  height:22px!important;
  display:block!important;
}
.destination-overview-reason-grid article p{
  margin:0!important;
  color:#3f3b35!important;
  font-size:12px!important;
  line-height:1.45!important;
  font-weight:600!important;
}
@media(max-width:1120px){
  .destination-overview-showcase-section .destination-overview-exact-container{
    padding-left:22px!important;
    padding-right:22px!important;
  }
}
@media(max-width:920px){
  .destination-overview-card-grid{
    grid-template-columns:repeat(2,1fr)!important;
  }
  .destination-overview-reason-band{
    grid-template-columns:120px 1fr!important;
  }
  .destination-overview-reason-grid{
    grid-column:1/-1!important;
  }
}
@media(max-width:640px){
  .destination-overview-showcase-section{
    padding-top:30px!important;
  }
  .destination-overview-card-grid,
  .destination-overview-reason-grid{
    grid-template-columns:1fr!important;
  }
  .destination-overview-reason-band{
    grid-template-columns:1fr!important;
    gap:18px!important;
    padding:22px!important;
  }
  .destination-overview-exact-head h2{
    font-size:27px!important;
  }
}

/* Case detail centered reading refinement */
.case-detail-section .section-head,
.case-detail-gallery-section .section-head,
.case-background-section .section-head,
.case-services-section .section-head,
.case-challenges-section .section-head{
  text-align:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
  max-width:780px!important;
}
.case-detail-section .section-head .kicker,
.case-detail-gallery-section .section-head .kicker,
.case-prose-panel .kicker{
  justify-content:center!important;
  width:100%;
}
.case-overview-panel,
.case-prose-panel{
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center;
  border-left:1px solid #e4d8c8!important;
  border-top:4px solid #C5A46D!important;
  padding:42px 46px!important;
  border-radius:10px!important;
  background:rgba(255,255,255,.82);
}
.case-overview-panel{
  max-width:980px!important;
  border-top-color:#b92a22!important;
}
.case-prose-panel{
  max-width:900px!important;
}
.case-overview-panel:before,
.case-prose-panel:before{
  left:50%!important;
  top:22px!important;
  transform:translateX(-50%);
  width:96px;
}
.case-overview-panel:before{
  background:#b92a22;
}
.case-prose-panel h2{
  max-width:760px;
  margin-left:auto!important;
  margin-right:auto!important;
}
.case-prose-panel p:not(.kicker){
  max-width:760px;
  margin-left:auto!important;
  margin-right:auto!important;
}
.case-background-table{
  max-width:920px;
  margin-left:auto;
  margin-right:auto;
}
.case-background-row{
  grid-template-columns:220px minmax(0,1fr);
}
.case-check-list{
  max-width:640px;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:left;
}
.case-feature-list{
  margin-left:auto!important;
  margin-right:auto!important;
}
.case-feature-list li{
  text-align:center;
  border-left:1px solid #e7ded2!important;
  border-top:3px solid #C5A46D;
  padding:20px 18px!important;
}
.case-service-group-grid,
.case-challenge-grid{
  max-width:1120px;
  margin-left:auto;
  margin-right:auto;
}
.case-service-card{
  text-align:center;
}
.case-service-card .case-check-list{
  max-width:260px;
}
.case-challenge-card{
  text-align:center;
}
.case-challenge-card div{
  text-align:left;
}
.case-outcome-section .case-outcome-copy{
  margin-left:auto!important;
  margin-right:auto!important;
}
.case-outcome-section .case-gallery-carousel{
  max-width:1120px;
  margin-left:auto;
  margin-right:auto;
}
.case-prose-stack{
  max-width:1120px;
  margin-left:auto;
  margin-right:auto;
}
.case-prose-panel-compact{
  text-align:center;
  border-left:1px solid #e4d8c8!important;
  border-top:4px solid #C5A46D;
}


@media(max-width:900px){
  .case-background-row{
    grid-template-columns:180px minmax(0,1fr);
  }
  .case-service-card .case-check-list,
  .case-prose-panel-compact .case-check-list{
    max-width:100%;
  }
}
@media(max-width:680px){
  .case-overview-panel,
  .case-prose-panel,
  .case-prose-panel-compact{
    text-align:left;
  }
  .case-detail-section .section-head,
  .case-detail-gallery-section .section-head,
  .case-background-section .section-head,
  .case-services-section .section-head,
  .case-challenges-section .section-head{
    text-align:left!important;
  }
  .case-detail-section .section-head .kicker,
  .case-detail-gallery-section .section-head .kicker,
  .case-prose-panel .kicker{
    justify-content:flex-start!important;
  }
  .case-background-row{
    grid-template-columns:1fr;
  }
  .case-feature-list li,
  .case-service-card,
  .case-challenge-card{
    text-align:left;
  }
}

/* Case detail module width: desktop modules can expand up to 1600px */
.case-detail-section>.container,
.case-detail-gallery-section>.container,
.case-detail-section>.wp-block-group.container,
.case-detail-gallery-section>.wp-block-group.container{
  max-width:1600px!important;
}
.case-overview-panel,
.case-prose-panel,
.case-background-table,
.case-service-group-grid,
.case-challenge-grid,
.case-outcome-section .case-gallery-carousel,
.case-prose-stack,
.case-prose-panel-compact{
  max-width:1600px!important;
}
.case-prose-panel h2,
.case-prose-panel p:not(.kicker){
  max-width:820px;
}
.case-background-row{
  grid-template-columns:650px minmax(0,1fr);
}
.case-feature-list{
  max-width:1320px!important;
}
.case-check-list{
  max-width:720px;
}
.case-service-card .case-check-list{
  max-width:300px;
}
.case-outcome-section .case-gallery-carousel{
  --case-gallery-card:calc((min(1600px, calc(100vw - 48px)) - 36px)/3);
}
.case-gallery-item{
  flex:0 0 var(--case-gallery-card)!important;
  max-width:var(--case-gallery-card)!important;
}
@keyframes redgateCaseGallery{
  0%,18%{transform:translateX(0)}
  28%,46%{transform:translateX(calc(-1 * (var(--case-gallery-card) + 18px)))}
  56%,74%{transform:translateX(calc(-2 * (var(--case-gallery-card) + 18px)))}
  84%,100%{transform:translateX(0)}
}
@media(max-width:900px){
  .case-background-row{
    grid-template-columns:180px minmax(0,1fr);
  }
  .case-outcome-section .case-gallery-carousel{
    --case-gallery-card:82%;
  }
  .case-gallery-item{
    flex:0 0 82%!important;
    max-width:82%!important;
  }
}
@media(max-width:680px){
  .case-background-row{
    grid-template-columns:1fr;
  }
  .case-overview-panel,
  .case-prose-panel,
  .case-prose-panel-compact{
    max-width:100%!important;
  }
}

/* Case detail compact flow: softer transitions and less empty space */
.wp-block-group.case-detail-section,
.wp-block-group.case-detail-gallery-section{
  padding-top:54px!important;
  padding-bottom:54px!important;
}
.case-overview-section{
  padding-top:58px!important;
}
.case-detail-section,
.case-detail-gallery-section{
  border-top:1px solid rgba(197,164,109,.18);
}
.case-overview-section,
.case-prose-section,
.case-services-section,
.case-outcome-section{
  background:linear-gradient(180deg,#F8F5EF 0%,#fbf8f2 100%)!important;
}
.case-background-section,
.case-challenges-section,
.case-partner-section{
  background:linear-gradient(180deg,#fbf8f2 0%,#F8F5EF 100%)!important;
}
.case-detail-section .section-head,
.case-detail-gallery-section .section-head,
.case-background-section .section-head,
.case-services-section .section-head,
.case-challenges-section .section-head{
  margin-bottom:22px!important;
}
.case-detail-section .section-head h2,
.case-detail-gallery-section h2{
  margin-bottom:8px!important;
}
.case-detail-section .section-head p:not(.kicker),
.case-detail-gallery-section .section-head p:not(.kicker){
  margin-top:6px!important;
}
.case-overview-panel,
.case-prose-panel,
.case-prose-panel-compact{
  padding-top:32px!important;
  padding-bottom:32px!important;
}
.case-prose-panel h2{
  margin-bottom:10px!important;
}
.case-prose-panel p:not(.kicker){
  line-height:1.68!important;
  margin-bottom:8px!important;
}
.case-background-row{
  padding-top:12px!important;
  padding-bottom:12px!important;
}
.case-feature-list{
  gap:10px!important;
  margin-top:14px!important;
}
.case-feature-list li{
  padding:16px 18px!important;
}
.case-check-list{
  gap:6px!important;
  margin-top:14px!important;
}
.case-service-group-grid{
  gap:16px!important;
}
.case-service-card{
  padding:24px 20px 20px!important;
}
.case-service-card h3{
  margin-bottom:10px!important;
}
.case-challenge-grid{
  gap:18px!important;
}
.case-challenge-card{
  padding:24px 22px 22px!important;
}
.case-challenge-card h3{
  margin-bottom:12px!important;
}
.case-challenge-card div{
  padding-top:10px!important;
  margin-top:10px!important;
}
.case-outcome-section .case-outcome-copy{
  margin-bottom:20px!important;
}
.case-outcome-section .case-gallery-carousel{
  padding:14px!important;
}
.case-gallery-track{
  gap:14px!important;
}
.case-prose-stack{
  gap:18px!important;
}
.case-cta-panel{
  padding-top:28px!important;
  padding-bottom:28px!important;
}
@media(max-width:900px){
  .wp-block-group.case-detail-section,
  .wp-block-group.case-detail-gallery-section{
    padding-top:42px!important;
    padding-bottom:42px!important;
  }
}
@media(max-width:680px){
  .wp-block-group.case-detail-section,
  .wp-block-group.case-detail-gallery-section{
    padding-top:34px!important;
    padding-bottom:34px!important;
  }
  .case-overview-panel,
  .case-prose-panel,
  .case-prose-panel-compact,
  .case-service-card,
  .case-challenge-card{
    padding-top:22px!important;
    padding-bottom:22px!important;
  }
}

/* Case detail editorial layout redesign */
.case-snapshot-section{
  margin-top:0!important;
  background:linear-gradient(180deg,#F8F5EF 0%,#fbf7ef 100%)!important;
}
.case-snapshot-layout,
.case-brief-layout,
.case-solution-services-layout,
.case-outcome-layout{
  max-width:1600px;
  margin-left:auto;
  margin-right:auto;
}
.case-snapshot-layout{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(420px,.72fr);
  gap:24px;
  align-items:stretch;
}
.case-snapshot-main,
.case-snapshot-side{
  min-width:0;
}
.case-snapshot-layout .case-overview-panel,
.case-snapshot-side{
  height:100%;
}
.case-snapshot-side{
  background:#fff;
  border:1px solid #e4d8c8;
  border-top:4px solid #C5A46D;
  border-radius:10px;
  padding:30px;
  box-shadow:0 16px 38px rgba(34,34,34,.06);
}
.case-snapshot-side .section-head{
  margin-bottom:16px!important;
}
.case-snapshot-side .section-head h2{
  font-size:28px;
}
.case-snapshot-side .case-background-table{
  border:0;
  border-radius:0;
  box-shadow:none;
}
.case-snapshot-side .case-background-row{
  grid-template-columns:150px minmax(0,1fr);
  padding-left:0!important;
  padding-right:0!important;
}
.case-brief-section{
  background:linear-gradient(180deg,#fbf7ef 0%,#F8F5EF 100%)!important;
}
.case-brief-layout{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:24px;
  align-items:stretch;
}
.case-brief-layout>div,
.case-solution-copy,
.case-services-wrap,
.case-outcome-text,
.case-outcome-media{
  min-width:0;
}
.case-brief-layout .case-prose-panel,
.case-solution-services-layout .case-prose-panel{
  height:100%;
  max-width:none!important;
}
.case-brief-layout .case-prose-panel,
.case-solution-copy .case-prose-panel{
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.case-solution-services-section{
  background:#F8F5EF!important;
}
.case-solution-services-layout{
  display:grid;
  grid-template-columns:minmax(360px,.72fr) minmax(0,1.28fr);
  gap:24px;
  align-items:stretch;
}
.case-services-wrap{
  background:#fff;
  border:1px solid #e4d8c8;
  border-radius:10px;
  padding:30px;
  box-shadow:0 16px 38px rgba(34,34,34,.06);
}
.case-mini-head{
  text-align:center;
  margin-bottom:18px;
}
.case-mini-head .kicker{
  justify-content:center!important;
  width:100%;
}
.case-mini-head h2{
  margin:0;
  font-size:30px;
  line-height:1.16;
  color:#222222;
}
.case-services-wrap .case-service-group-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
  max-width:none!important;
}
.case-services-wrap .case-service-card{
  box-shadow:none;
  background:#fbf8f2;
}
.case-challenges-section{
  background:linear-gradient(180deg,#F8F5EF 0%,#fbf7ef 100%)!important;
}
.case-challenge-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.case-outcome-section{
  background:#F8F5EF!important;
}
.case-outcome-layout{
  display:grid;
  grid-template-columns:minmax(360px,.42fr) minmax(0,.58fr);
  gap:24px;
  align-items:stretch;
}
.case-outcome-text .case-prose-panel{
  height:100%;
  display:flex;
  flex-direction:column;
  justify-content:center;
  max-width:none!important;
}
.case-outcome-media .case-gallery-carousel{
  height:100%;
  min-height:330px;
  display:flex;
  align-items:center;
}
.case-outcome-media .case-gallery-track{
  align-items:center;
}
.case-outcome-media .case-gallery-item img{
  aspect-ratio:16/10;
}
.case-partner-section{
  background:linear-gradient(180deg,#fbf7ef 0%,#F8F5EF 100%)!important;
}
.case-partner-section .case-prose-stack{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:24px!important;
}
.case-partner-section .case-prose-panel-compact{
  height:100%;
}
.case-cta-panel{
  max-width:1600px;
  margin-left:auto;
  margin-right:auto;
}
@media(max-width:1180px){
  .case-snapshot-layout,
  .case-solution-services-layout,
  .case-outcome-layout{
    grid-template-columns:1fr;
  }
  .case-snapshot-side .case-background-row{
    grid-template-columns:220px minmax(0,1fr);
  }
  .case-services-wrap .case-service-group-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:900px){
  .case-brief-layout,
  .case-partner-section .case-prose-stack{
    grid-template-columns:1fr;
  }
  .case-snapshot-side .case-background-row{
    grid-template-columns:180px minmax(0,1fr);
  }
}
@media(max-width:680px){
  .case-snapshot-layout,
  .case-brief-layout,
  .case-solution-services-layout,
  .case-outcome-layout,
  .case-partner-section .case-prose-stack{
    gap:16px;
  }
  .case-snapshot-side,
  .case-services-wrap,
  .case-outcome-section .case-gallery-carousel{
    padding:20px!important;
  }
  .case-snapshot-side .case-background-row{
    grid-template-columns:1fr;
  }
  .case-services-wrap .case-service-group-grid{
    grid-template-columns:1fr;
  }
}

/* Case detail desktop rollback + mobile reading polish */
@media(min-width:681px){
  .case-overview-section,
  .case-prose-section,
  .case-services-section,
  .case-outcome-section{
    background:linear-gradient(180deg,#F8F5EF 0%,#fbf8f2 100%)!important;
  }
  .case-background-section,
  .case-challenges-section,
  .case-partner-section{
    background:linear-gradient(180deg,#fbf8f2 0%,#F8F5EF 100%)!important;
  }
  .case-prose-stack{
    grid-template-columns:1.05fr .95fr!important;
    gap:18px!important;
    max-width:1600px!important;
  }
  .case-outcome-section .case-gallery-carousel{
    height:auto!important;
    min-height:0!important;
    display:block!important;
    align-items:initial!important;
    max-width:1600px!important;
  }
  .case-gallery-item img{
    aspect-ratio:4/3!important;
  }
}

@media(max-width:680px){
  body .case-detail-hero.hero-cover.hero-image,
  body .wp-block-cover.case-detail-hero.hero-cover{
    height:520px!important;
    min-height:520px!important;
  }
  .case-detail-hero .case-hero-card{
    left:14px!important;
    right:14px!important;
    bottom:20px!important;
    width:auto!important;
    max-width:none!important;
    padding:18px!important;
    border-left-width:4px!important;
    border-radius:8px!important;
  }
  .case-detail-hero .case-hero-card .hero-title{
    font-size:clamp(22px,6.8vw,30px)!important;
    line-height:1.12!important;
  }
  .case-detail-hero .case-hero-card .hero-summary{
    display:-webkit-box!important;
    -webkit-line-clamp:3;
    -webkit-box-orient:vertical;
    overflow:hidden;
    margin-top:10px!important;
    font-size:14px!important;
    line-height:1.5!important;
  }
  .case-detail-hero .case-hero-card .hero-kicker{
    display:block!important;
    margin-top:8px!important;
    font-size:12px!important;
    line-height:1.45!important;
  }
  .case-detail-hero .case-hero-card .hero-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    margin-top:12px!important;
  }
  .case-detail-hero .case-hero-card .btn{
    width:100%;
    justify-content:center;
    min-height:42px!important;
    padding:10px 12px!important;
    font-size:13px!important;
  }
  .wp-block-group.case-detail-section,
  .wp-block-group.case-detail-gallery-section{
    padding-top:30px!important;
    padding-bottom:30px!important;
  }
  .case-detail-section>.container,
  .case-detail-gallery-section>.container,
  .case-detail-section>.wp-block-group.container,
  .case-detail-gallery-section>.wp-block-group.container{
    padding-left:16px!important;
    padding-right:16px!important;
  }
  .case-detail-section .section-head,
  .case-detail-gallery-section .section-head,
  .case-background-section .section-head,
  .case-services-section .section-head,
  .case-challenges-section .section-head{
    margin-bottom:16px!important;
    text-align:left!important;
  }
  .case-detail-section .section-head .kicker,
  .case-detail-gallery-section .section-head .kicker,
  .case-prose-panel .kicker{
    justify-content:flex-start!important;
    width:auto!important;
  }
  .case-overview-panel,
  .case-prose-panel,
  .case-prose-panel-compact{
    max-width:100%!important;
    padding:22px 18px!important;
    text-align:left!important;
    border-top:4px solid #C5A46D!important;
    border-left:1px solid #e4d8c8!important;
    border-radius:8px!important;
    box-shadow:0 10px 24px rgba(34,34,34,.06)!important;
  }
  .case-overview-panel{
    border-top-color:#b92a22!important;
  }
  .case-overview-panel:before,
  .case-prose-panel:before{
    left:18px!important;
    top:12px!important;
    transform:none!important;
    width:54px!important;
  }
  .case-prose-panel h2,
  .case-mini-head h2{
    font-size:clamp(23px,6.6vw,29px)!important;
    line-height:1.15!important;
    margin-bottom:10px!important;
  }
  .case-prose-panel p:not(.kicker),
  .case-feature-list span,
  .case-check-list li,
  .case-challenge-card p:not(.kicker){
    font-size:15px!important;
    line-height:1.62!important;
  }
  .case-background-table{
    border-radius:8px!important;
    overflow:hidden;
  }
  .case-background-row{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:5px!important;
    padding:13px 15px!important;
  }
  .case-background-row span{
    font-size:11px!important;
  }
  .case-background-row strong{
    font-size:14px!important;
  }
  .case-feature-list{
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  .case-feature-list li{
    text-align:left!important;
    padding:15px!important;
  }
  .case-service-group-grid,
  .case-challenge-grid,
  .case-prose-stack{
    grid-template-columns:1fr!important;
    gap:14px!important;
  }
  .case-service-card,
  .case-challenge-card{
    text-align:left!important;
    padding:20px 18px!important;
    border-radius:8px!important;
  }
  .case-service-card h3,
  .case-challenge-card h3{
    font-size:21px!important;
  }
  .case-check-list,
  .case-service-card .case-check-list,
  .case-prose-panel-compact .case-check-list{
    max-width:100%!important;
  }
  .case-outcome-section .case-outcome-copy{
    margin-bottom:14px!important;
  }
  .case-outcome-section .case-gallery-carousel{
    padding:10px!important;
    border-radius:8px!important;
  }
  .case-gallery-track{
    gap:10px!important;
    overflow-x:auto!important;
    scroll-snap-type:x mandatory;
    padding-bottom:6px;
  }
  .case-gallery-item{
    flex:0 0 86%!important;
    max-width:86%!important;
    scroll-snap-align:start;
  }
  .case-gallery-item img{
    aspect-ratio:4/3!important;
  }
  .case-cta-panel{
    grid-template-columns:1fr!important;
    gap:16px!important;
    padding:22px 18px!important;
  }
  .case-cta-panel .cta-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    width:100%;
  }
  .case-cta-panel .btn{
    width:100%;
    justify-content:center;
  }
}
.split-image-block figcaption,.attraction-showcase-card p:empty,.destination-detail-image-card p:empty{display:none !important}