﻿/* ============================================================
   Eagle Edutour — unified Apple-inspired skin for existing pages
   Loaded after page content so it can harmonise legacy inline CSS.
   ============================================================ */

.ee-page{
  --ee-ink:#0b1030;
  --ee-ink-2:#1a2148;
  --ee-body:#4d5470;
  --ee-muted:#7b8299;
  --ee-soft:#f5f5f7;
  --ee-soft-2:#eef0f5;
  --ee-line:rgba(11,16,48,.09);
  --ee-orange:#f5821f;
  --ee-orange-2:#ffb04d;
  --ee-orange-deep:#d95f0e;
  --ee-navy:#050a2e;
  --ee-r:24px;
  --ee-ease:cubic-bezier(.22,.61,.36,1);
}
/* ---------- editorial sections for content-heavy pages ---------- */
.ee-page .ee-content .ee-sec{
  padding:clamp(64px,7.5vw,108px) 24px !important;
}
.ee-page .ee-content .ee-sec > .ee-exp-container{
  padding-left:0 !important;
  padding-right:0 !important;
}
.ee-page .ee-content .ee-sec-head{
  max-width:860px;
  margin:0 auto clamp(34px,4vw,56px);
  text-align:center;
}
.ee-page .ee-content .ee-sec-head h2{margin-bottom:16px}
.ee-page .ee-content .ee-sec-head p{
  margin:0 !important;
  font-size:16.5px !important;
  line-height:1.78 !important;
  color:var(--ee-muted) !important;
}
.ee-page .ee-content .ee-kicker{
  margin:0 0 14px !important;
  font-size:11px !important;
  font-weight:700;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:var(--ee-orange-deep) !important;
  text-align:center;
}
.ee-page .ee-content .ee-feature-card{
  background:#fff;
  border:1px solid var(--ee-line);
  border-radius:22px;
  box-shadow:0 1px 2px rgba(11,16,48,.03);
  transition:transform .45s var(--ee-ease),box-shadow .45s var(--ee-ease) !important;
}
.ee-page .ee-content .ee-feature-card:hover{
  transform:translateY(-5px);
  box-shadow:0 28px 54px -34px rgba(11,16,48,.38);
}
.ee-page .ee-content .ee-split{
  display:grid !important;
  grid-template-columns:1.02fr .98fr !important;
  gap:clamp(28px,4vw,64px) !important;
  align-items:start;
}
.ee-page .ee-content .ee-split h2{margin-bottom:18px}
.ee-page .ee-content .ee-split > div > p{
  font-size:16.5px !important;
  line-height:1.78 !important;
}
.ee-page .ee-content .ee-quote{
  margin-top:26px;
  padding:26px 30px;
  border-radius:22px;
  background:linear-gradient(135deg,#050a2e,#0a1148 72%);
  color:#fff;
  font-size:17px;
  line-height:1.72;
}
.ee-page .ee-content .ee-quote p{
  margin:0 !important;
  font-size:16px !important;
  color:rgba(255,255,255,.84) !important;
}
.ee-page .ee-content .ee-fact-list{
  list-style:none !important;
  margin:0 !important;
  padding:0 !important;
}
.ee-page .ee-content .ee-fact-list li{
  display:flex;
  gap:16px;
  margin:0 !important;
  padding:16px 0;
  border-bottom:1px solid var(--ee-line);
  font-size:15.5px !important;
  line-height:1.6 !important;
  color:var(--ee-muted) !important;
}
.ee-page .ee-content .ee-fact-list li:last-child{border-bottom:0}
.ee-page .ee-content .ee-fact-list b{
  flex:0 0 92px;
  color:var(--ee-ink);
  font-weight:650;
}

/* FAQ cards, harmonised with the rest of the site */
.ee-page .ee-content .faq-section{
  max-width:1160px;
  margin:0 auto;
  padding:clamp(64px,7vw,104px) 24px;
}
.ee-page .ee-content .faq-main-title{
  font-size:clamp(28px,3.1vw,44px) !important;
  color:var(--ee-ink) !important;
  margin-bottom:14px !important;
  text-align:center;
}
.ee-page .ee-content .faq-main-title::after{display:none !important}
.ee-page .ee-content .faq-container{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:16px !important;
  align-items:start !important;
}
.ee-page .ee-content .faq-item{
  background:#fff !important;
  border:1px solid var(--ee-line) !important;
  border-radius:18px !important;
  overflow:hidden;
}
.ee-page .ee-content .faq-header{padding:22px 24px !important}
.ee-page .ee-content .faq-header{
  list-style:none;
  display:flex;
  justify-content:space-between;
  align-items:center;
  cursor:pointer;
}
.ee-page .ee-content .faq-header::-webkit-details-marker,
.ee-page .ee-content .faq-header::marker{display:none !important}
.ee-page .ee-content .faq-icon{
  display:inline-block;
  width:8px;
  height:8px;
  margin-left:12px;
  border-right:2px solid var(--ee-orange);
  border-bottom:2px solid var(--ee-orange);
  transform:rotate(45deg);
  transition:transform .3s var(--ee-ease);
  flex-shrink:0;
}
.ee-page .ee-content .faq-item[open] .faq-icon{transform:rotate(-135deg)}
.ee-page .ee-content .faq-title{
  font-size:15.5px !important;
  color:var(--ee-ink) !important;
}
.ee-page .ee-content .faq-content{
  padding:0 24px 22px !important;
  font-size:14.5px !important;
  line-height:1.75 !important;
  color:var(--ee-muted) !important;
}

@media (max-width: 900px){
  .ee-page .ee-content .ee-split{grid-template-columns:1fr !important}
}
@media (max-width: 720px){
  .ee-page .ee-content .faq-container{grid-template-columns:1fr !important}
  .ee-page .ee-content .ee-fact-list b{flex-basis:80px}
}

/* service & safety editorial layout */
.ee-page .ee-content .ee-safety-layout{
  display:grid !important;
  grid-template-columns:.82fr 1.18fr !important;
  gap:clamp(24px,3.6vw,52px) !important;
  align-items:center;
}
.ee-page .ee-content .ee-safety-media{
  margin:0 !important;
  border-radius:24px;
  overflow:hidden;
  aspect-ratio:4/5;
  background:var(--ee-soft);
  box-shadow:0 30px 60px -40px rgba(11,16,48,.35);
}
.ee-page .ee-content .ee-safety-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  border-radius:0 !important;
}
.ee-page .ee-content .ee-safety-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:12px !important;
}
.ee-page .ee-content .ee-safety-grid .ee-check{
  padding:18px 20px !important;
  border-radius:16px !important;
}
.ee-page .ee-content .ee-safety-grid .ee-check strong{font-size:15px !important}
.ee-page .ee-content .ee-safety-grid .ee-check span{
  font-size:13px !important;
  line-height:1.55 !important;
}
.ee-page .ee-content .ee-safety-body .ee-note{
  margin:18px 0 0 !important;
  max-width:none;
}

/* dark course headers must keep light titles */
.ee-page .ee-content .course-header h3{
  color:#fff !important;
}
@media (max-width:900px){
  .ee-page .ee-content .ee-safety-layout{grid-template-columns:1fr !important}
  .ee-page .ee-content .ee-safety-media{aspect-ratio:16/10}
}
@media (max-width:720px){
  .ee-page .ee-content .ee-safety-grid{grid-template-columns:1fr !important}
}

/* legacy sections brought into the same editorial system */
.ee-page .ee-content .services-section{
  width:100% !important;
  max-width:1160px !important;
  margin:0 auto !important;
  padding:clamp(64px,7.5vw,108px) 24px !important;
}
.ee-page .ee-content .services-title{
  margin:0 0 16px !important;
  font-size:clamp(28px,3.1vw,44px) !important;
  line-height:1.16 !important;
  letter-spacing:-.028em !important;
  text-align:center;
  color:var(--ee-ink);
}
.ee-page .ee-content .services-title::after{display:none !important}
.ee-page .ee-content .services-lead{
  max-width:820px;
  margin:0 auto clamp(34px,4vw,56px) !important;
  text-align:center;
  font-size:16.5px !important;
  line-height:1.78 !important;
  color:var(--ee-muted) !important;
}
.ee-page .ee-content .faq-lead{
  max-width:760px;
  margin:0 auto clamp(28px,3vw,42px) !important;
  text-align:center;
  font-size:16.5px !important;
  line-height:1.78 !important;
  color:var(--ee-muted) !important;
}

.ee-page .ee-content{
  background:#fff;
  color:var(--ee-body);
  font-size:17px;
  line-height:1.72;
  overflow-x:clip;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
.ee-page .ee-content *,
.ee-page .ee-content *::before,
.ee-page .ee-content *::after{box-sizing:border-box}
.ee-page .ee-content section{position:relative;scroll-margin-top:96px}
.ee-page .ee-content img{max-width:100%;height:auto;border-radius:18px}
.ee-page .ee-content iframe{border-radius:20px}
.ee-page .ee-content a{transition:color .25s var(--ee-ease),opacity .25s var(--ee-ease)}

/* ---------- typography ---------- */
.ee-page .ee-content h1,
.ee-page .ee-content h2,
.ee-page .ee-content h3,
.ee-page .ee-content h4{
  color:var(--ee-ink);
  font-weight:700;
  letter-spacing:-.028em;
  text-wrap:balance;
}
.ee-page .ee-content h1{font-size:clamp(36px,4.6vw,60px);line-height:1.08}
.ee-page .ee-content h2{font-size:clamp(28px,3.1vw,44px);line-height:1.16;margin:0 0 22px}
.ee-page .ee-content h3{font-size:clamp(19px,1.55vw,24px);line-height:1.32;margin:0 0 12px}
.ee-page .ee-content h4{font-size:18px;line-height:1.4;margin:0 0 10px}
.ee-page .ee-content p,
.ee-page .ee-content li{font-size:17px;line-height:1.78;color:var(--ee-body)}
.ee-page .ee-content p{margin:0 0 1em}
.ee-page .ee-content strong{color:var(--ee-ink);font-weight:650}
.ee-page .ee-content ul,
.ee-page .ee-content ol{padding-left:1.25em}
.ee-page .ee-content li{margin:.35em 0}
.ee-page .ee-content p a,
.ee-page .ee-content li a{
  color:var(--ee-orange-deep);
  text-decoration:none;
  border-bottom:1px solid rgba(245,130,31,.3);
}
.ee-page .ee-content p a:hover,
.ee-page .ee-content li a:hover{border-bottom-color:var(--ee-orange)}

/* major section headings get a refined orange accent */
.ee-page .ee-content h2.wp-block-heading{
  position:relative;
  max-width:920px;
  margin:0 auto 20px;
  padding-bottom:18px;
  text-align:center;
}
.ee-page .ee-content h2.wp-block-heading.has-text-align-left{text-align:left;margin-left:0}
.ee-page .ee-content h2.wp-block-heading::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:0;
  width:46px;
  height:3px;
  border-radius:3px;
  transform:translateX(-50%);
  background:linear-gradient(90deg,var(--ee-orange),var(--ee-orange-2));
}
.ee-page .ee-content h2.wp-block-heading.has-text-align-left::after{left:0;transform:none}

/* ---------- hero ---------- */
.ee-page .ee-content .hero-banner{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100vw !important;
  max-width:none !important;
  min-height:clamp(560px,80vh,820px) !important;
  margin-left:calc(-1 * (100vw - 100%) / 2) !important;
  padding:clamp(120px,15vh,180px) 24px clamp(90px,11vh,132px) !important;
  background-color:#050a2e;
  background-position:center !important;
  background-size:cover !important;
  overflow:hidden;
  isolation:isolate;
}
.ee-page .ee-content .hero-banner::after{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:46%;
  background:linear-gradient(180deg,rgba(5,10,46,0),rgba(5,10,46,.55));
  pointer-events:none;
  z-index:0;
}
.ee-page .ee-content .hero-overlay{
  background:
    radial-gradient(90% 70% at 18% 88%,rgba(245,130,31,.22),transparent 62%),
    linear-gradient(180deg,rgba(4,6,32,.52) 0%,rgba(4,6,32,.3) 42%,rgba(4,6,32,.82) 100%) !important;
  pointer-events:none;
}
.ee-page .ee-content .hero-container{
  width:min(100%,1080px) !important;
  max-width:1080px !important;
  margin:0 auto !important;
  padding:0 8px;
  z-index:2;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
}
.ee-page .ee-content .hero-text{
  width:100% !important;
  max-width:960px !important;
  margin:0 auto !important;
}
.ee-page .ee-content .hero-text h1{
  margin:0 0 20px !important;
  font-size:clamp(40px,5.7vw,78px) !important;
  line-height:1.04 !important;
  font-weight:700 !important;
  letter-spacing:-.045em !important;
  color:#fff !important;
  text-shadow:0 24px 70px rgba(0,0,0,.42) !important;
}
.ee-page .ee-content .hero-text h2{
  margin:0 0 14px !important;
  font-size:clamp(17px,1.85vw,25px) !important;
  line-height:1.45 !important;
  font-weight:500 !important;
  letter-spacing:-.01em !important;
  color:rgba(255,255,255,.92) !important;
  text-shadow:0 10px 34px rgba(0,0,0,.35) !important;
}
.ee-page .ee-content .hero-text p{
  max-width:720px !important;
  margin:18px auto 0 !important;
  font-size:clamp(15px,1.15vw,18px) !important;
  line-height:1.8 !important;
  color:rgba(255,255,255,.76) !important;
  text-shadow:0 8px 24px rgba(0,0,0,.35) !important;
}
.ee-page .ee-content .hero-buttons{
  display:flex !important;
  flex-wrap:wrap !important;
  justify-content:center !important;
  gap:14px !important;
  margin-top:36px !important;
}

/* hero entrance */
@keyframes eeHeroIn{
  from{opacity:0;transform:translateY(30px)}
  to{opacity:1;transform:none}
}
@keyframes eeHeroZoom{
  from{transform:scale(1.06)}
  to{transform:scale(1)}
}
.ee-page .ee-content .hero-text > *{
  animation:eeHeroIn .95s var(--ee-ease) both;
}
.ee-page .ee-content .hero-text > *:nth-child(1){animation-delay:.04s}
.ee-page .ee-content .hero-text > *:nth-child(2){animation-delay:.14s}
.ee-page .ee-content .hero-text > *:nth-child(3){animation-delay:.24s}
.ee-page .ee-content .hero-text > *:nth-child(4){animation-delay:.34s}
.ee-page .ee-content .bg-slide,
.ee-page .ee-content .slide{background-size:cover !important;background-position:center !important}

/* ---------- buttons ---------- */
.ee-page .ee-content .btn-primary,
.ee-page .ee-content .btn-secondary,
.ee-page .ee-content a[class*="btn-"],
.ee-page .ee-content button[type="submit"],
.ee-page .ee-content input[type="submit"],
.ee-page .ee-content .wpcf7-submit{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-width:0 !important;
  padding:15px 32px !important;
  border-radius:999px !important;
  border:0 !important;
  font-size:15px !important;
  font-weight:600 !important;
  line-height:1.2 !important;
  letter-spacing:.005em !important;
  text-decoration:none !important;
  cursor:pointer;
  transition:transform .4s var(--ee-ease),box-shadow .4s var(--ee-ease),background .3s var(--ee-ease),color .3s var(--ee-ease) !important;
}
.ee-page .ee-content .btn-primary,
.ee-page .ee-content .hero-banner .btn-primary,
.ee-page .ee-content button[type="submit"],
.ee-page .ee-content input[type="submit"],
.ee-page .ee-content .wpcf7-submit{
  background:linear-gradient(135deg,#ffa23f,var(--ee-orange) 52%,var(--ee-orange-deep)) !important;
  color:#fff !important;
  box-shadow:0 16px 36px -16px rgba(245,130,31,.8) !important;
}
.ee-page .ee-content .hero-banner .btn-secondary{
  background:rgba(255,255,255,.1) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.42) !important;
  -webkit-backdrop-filter:blur(14px) saturate(150%);
  backdrop-filter:blur(14px) saturate(150%);
  box-shadow:none !important;
}
.ee-page .ee-content .btn-secondary{
  background:#fff !important;
  color:var(--ee-ink) !important;
  border:1px solid var(--ee-line) !important;
}
.ee-page .ee-content .btn-primary:hover,
.ee-page .ee-content a[class*="btn-"]:hover,
.ee-page .ee-content button[type="submit"]:hover,
.ee-page .ee-content input[type="submit"]:hover,
.ee-page .ee-content .wpcf7-submit:hover{
  transform:translateY(-2px) !important;
  box-shadow:0 22px 46px -18px rgba(245,130,31,.9) !important;
  filter:saturate(1.04);
}
.ee-page .ee-content .hero-banner .btn-secondary:hover{
  background:rgba(255,255,255,.2) !important;
}

/* ---------- section rhythm ---------- */
.ee-page .ee-content section:not(.hero-banner){
  padding-top:clamp(64px,7.6vw,112px) !important;
  padding-bottom:clamp(64px,7.6vw,112px) !important;
}
.ee-page .ee-content .ee-exp-section{
  background:#fff;
}
.ee-page .ee-content .ee-exp-section + .ee-exp-section{
  border-top:1px solid var(--ee-line);
}
.ee-page .ee-content .ee-exp-container,
.ee-page .ee-content .services-container,
.ee-page .ee-content .camp-landing{
  width:100% !important;
  max-width:1160px !important;
  margin:0 auto !important;
  padding-left:24px !important;
  padding-right:24px !important;
}
.ee-page .ee-content .ee-exp-header{
  max-width:820px;
  margin:0 auto clamp(34px,4vw,54px);
  text-align:center;
}
.ee-page .ee-content .ee-exp-header h2{
  margin-bottom:16px;
}
.ee-page .ee-content .ee-exp-header p{
  font-size:16.5px;
  color:var(--ee-muted);
}

/* generic WP blocks: a calm editorial column */
.ee-page .ee-content > .wp-block-group,
.ee-page .ee-content > .wp-block-columns,
.ee-page .ee-content > .wp-block-heading,
.ee-page .ee-content > .wp-block-paragraph,
.ee-page .ee-content > .wp-block-list,
.ee-page .ee-content > p,
.ee-page .ee-content > ul,
.ee-page .ee-content > ol,
.ee-page .ee-content > h2,
.ee-page .ee-content > h3{
  width:100%;
  max-width:1160px;
  margin-left:auto;
  margin-right:auto;
  padding-left:24px;
  padding-right:24px;
}
.ee-page .ee-content > .wp-block-group,
.ee-page .ee-content > .wp-block-columns{
  margin-top:clamp(36px,5vw,64px) !important;
  margin-bottom:clamp(36px,5vw,64px) !important;
}
.ee-page .ee-content .wp-block-columns{
  display:flex;
  flex-wrap:wrap;
  gap:clamp(22px,3vw,40px);
  align-items:flex-start;
}
.ee-page .ee-content .wp-block-column{
  flex:1 1 0;
  min-width:0;
}
.ee-page .ee-content .wp-block-group{
  background:transparent;
  border:0;
  box-shadow:none;
}
.ee-page .ee-content .wp-block-group > .wp-block-group{
  padding-left:0;
  padding-right:0;
}

/* ---------- cards ---------- */
.ee-page .ee-content .ee-exp-card,
.ee-page .ee-content .baoming_1-card,
.ee-page .ee-content .stat-card,
.ee-page .ee-content .info-card,
.ee-page .ee-content .testimonial-card,
.ee-page .ee-content .highlight-card,
.ee-page .ee-content .feature-card,
.ee-page .ee-content .partner-card,
.ee-page .ee-content .team-card,
.ee-page .ee-content .itinerary-card,
.ee-page .ee-content .service-card{
  background:#fff !important;
  border:1px solid var(--ee-line) !important;
  border-radius:var(--ee-r) !important;
  box-shadow:0 1px 2px rgba(11,16,48,.03) !important;
  transition:transform .5s var(--ee-ease),box-shadow .5s var(--ee-ease),border-color .5s var(--ee-ease) !important;
  overflow:hidden;
}
.ee-page .ee-content .ee-exp-card,
.ee-page .ee-content .baoming_1-card,
.ee-page .ee-content .stat-card,
.ee-page .ee-content .info-card,
.ee-page .ee-content .testimonial-card,
.ee-page .ee-content .highlight-card,
.ee-page .ee-content .feature-card{
  padding:clamp(22px,2.4vw,32px) !important;
}
.ee-page .ee-content .ee-exp-card:hover,
.ee-page .ee-content .baoming_1-card:hover,
.ee-page .ee-content .stat-card:hover,
.ee-page .ee-content .info-card:hover,
.ee-page .ee-content .testimonial-card:hover,
.ee-page .ee-content .highlight-card:hover,
.ee-page .ee-content .feature-card:hover,
.ee-page .ee-content .partner-card:hover,
.ee-page .ee-content .team-card:hover,
.ee-page .ee-content .itinerary-card:hover,
.ee-page .ee-content .service-card:hover{
  transform:translateY(-6px) !important;
  border-color:rgba(245,130,31,.28) !important;
  box-shadow:0 32px 64px -34px rgba(11,16,48,.4) !important;
}
.ee-page .ee-content .ee-exp-card h3,
.ee-page .ee-content .baoming_1-text strong,
.ee-page .ee-content .info-card-title{
  color:var(--ee-ink) !important;
}
.ee-page .ee-content .ee-exp-card p,
.ee-page .ee-content .baoming_1-text span,
.ee-page .ee-content .info-card-desc{
  color:var(--ee-muted) !important;
}
.ee-page .ee-content .ee-exp-grid,
.ee-page .ee-content .services-grid,
.ee-page .ee-content .team-grid,
.ee-page .ee-content .features-grid,
.ee-page .ee-content .stats-grid,
.ee-page .ee-content .partners-grid,
.ee-page .ee-content .destinations-grid{
  gap:clamp(18px,2.2vw,30px) !important;
}

/* image cards */
.ee-page .ee-content .card-image,
.ee-page .ee-content .card-img-box,
.ee-page .ee-content .card-image-wrapper{
  overflow:hidden;
}
.ee-page .ee-content .card-image img,
.ee-page .ee-content .card-img-box img,
.ee-page .ee-content .card-image-wrapper img,
.ee-page .ee-content .dest-card-img img{
  transition:transform 1.1s var(--ee-ease) !important;
}
.ee-page .ee-content .service-card:hover .card-image img,
.ee-page .ee-content .itinerary-card:hover .card-img-box img,
.ee-page .ee-content .dest-card:hover .dest-card-img img,
.ee-page .ee-content .card-image-wrapper:hover img{
  transform:scale(1.06) !important;
}
.ee-page .ee-content .card-content,
.ee-page .ee-content .card-body{
  padding:clamp(20px,2vw,28px) !important;
}
.ee-page .ee-content .card-tag{
  border-radius:999px !important;
  background:rgba(245,130,31,.1) !important;
  color:var(--ee-orange-deep) !important;
  font-weight:600;
}

/* team */
.ee-page .ee-content .team-card{
  padding:clamp(22px,2.4vw,30px) !important;
}
.ee-page .ee-content .team-header{
  align-items:center;
  gap:16px;
}
.ee-page .ee-content .avatar-img{
  width:68px !important;
  height:68px !important;
  border-radius:50% !important;
  object-fit:cover;
  box-shadow:0 0 0 4px rgba(245,130,31,.12);
}
.ee-page .ee-content .member-title{
  color:var(--ee-orange-deep) !important;
  font-size:12.5px !important;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.ee-page .ee-content .team-quote{
  margin-top:18px !important;
  padding-top:18px !important;
  border-top:1px solid var(--ee-line) !important;
  color:var(--ee-muted) !important;
  font-size:14.5px !important;
  line-height:1.75 !important;
}

/* stats */
.ee-page .ee-content .stat-card{
  text-align:center;
}
.ee-page .ee-content .stat-number{
  font-size:clamp(28px,2.6vw,38px) !important;
  font-weight:700 !important;
  letter-spacing:-.04em;
  background:linear-gradient(135deg,var(--ee-orange),var(--ee-orange-deep));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent !important;
}
.ee-page .ee-content .stat-label{
  color:var(--ee-muted) !important;
  font-size:13.5px !important;
  letter-spacing:.04em;
}

/* quick nav / sticky side rail */
.ee-page .ee-content .quick-nav-box{
  background:#f5f5f7 !important;
  border:1px solid var(--ee-line) !important;
  border-radius:22px !important;
  padding:24px !important;
  box-shadow:none !important;
}
.ee-page .ee-content .quick-nav-box h3{
  font-size:12px !important;
  letter-spacing:.16em !important;
  text-transform:uppercase;
  color:var(--ee-muted) !important;
  margin-bottom:14px !important;
}
.ee-page .ee-content .quick-nav-box a{
  display:block;
  padding:8px 0;
  font-size:14px;
  color:var(--ee-ink-2) !important;
  border-bottom:0 !important;
}
.ee-page .ee-content .quick-nav-box a:hover{
  color:var(--ee-orange) !important;
  padding-left:4px;
}
.ee-page .ee-content .quick-nav-box li{
  border:0 !important;
  margin:0 !important;
}

/* ---------- timeline ---------- */
.ee-page .ee-content .timeline-container{
  padding-left:8px;
}
.ee-page .ee-content .timeline-node::before{
  background:rgba(245,130,31,.22) !important;
  width:2px !important;
}
.ee-page .ee-content .node-icon{
  background:linear-gradient(135deg,var(--ee-orange),var(--ee-orange-deep)) !important;
  color:#fff !important;
  box-shadow:0 10px 22px -10px rgba(245,130,31,.85);
  border:0 !important;
}
.ee-page .ee-content .node-content{
  background:#fff !important;
  border:1px solid var(--ee-line) !important;
  border-radius:18px !important;
  padding:18px 22px !important;
  box-shadow:0 1px 2px rgba(11,16,48,.03);
}
.ee-page .ee-content .node-content h3{
  margin-bottom:6px !important;
}
.ee-page .ee-content .node-content p{
  color:var(--ee-muted) !important;
  font-size:14.5px !important;
  line-height:1.7 !important;
}

/* ---------- sliders ---------- */
.ee-page .ee-content .itinerary-slider-wrapper,
.ee-page .ee-content .photo-carousel-wrapper{
  border-radius:26px !important;
}
.ee-page .ee-content .itinerary-slide{
  background:#fff !important;
  border:1px solid var(--ee-line) !important;
  border-radius:22px !important;
  box-shadow:none !important;
}
.ee-page .ee-content .nav-btn,
.ee-page .ee-content .prev-btn,
.ee-page .ee-content .next-btn{
  border-radius:999px !important;
  border:1px solid var(--ee-line) !important;
  background:#fff !important;
  box-shadow:0 10px 24px -16px rgba(11,16,48,.5);
  transition:transform .3s var(--ee-ease),background .3s var(--ee-ease) !important;
}
.ee-page .ee-content .nav-btn:hover,
.ee-page .ee-content .prev-btn:hover,
.ee-page .ee-content .next-btn:hover{
  background:var(--ee-orange) !important;
  color:#fff !important;
  transform:translateY(-2px);
}

/* ---------- forms (CF7 / WPForms) ---------- */
.ee-page .ee-content .wpcf7,
.ee-page .ee-content .wpforms-container{
  max-width:820px;
  margin:0 auto;
}
.ee-page .ee-content input[type="text"],
.ee-page .ee-content input[type="email"],
.ee-page .ee-content input[type="tel"],
.ee-page .ee-content input[type="number"],
.ee-page .ee-content input[type="date"],
.ee-page .ee-content select,
.ee-page .ee-content textarea,
.ee-page .ee-content .wpcf7 input:not([type="submit"]),
.ee-page .ee-content .wpcf7 select,
.ee-page .ee-content .wpcf7 textarea{
  width:100% !important;
  padding:15px 18px !important;
  border:1px solid var(--ee-line) !important;
  border-radius:14px !important;
  background:#fff !important;
  color:var(--ee-ink) !important;
  font-size:15.5px !important;
  line-height:1.4 !important;
  box-shadow:none !important;
  transition:border-color .25s var(--ee-ease),box-shadow .25s var(--ee-ease) !important;
}
.ee-page .ee-content input:focus,
.ee-page .ee-content select:focus,
.ee-page .ee-content textarea:focus{
  outline:none !important;
  border-color:rgba(245,130,31,.6) !important;
  box-shadow:0 0 0 4px rgba(245,130,31,.12) !important;
}
.ee-page .ee-content .wpcf7 label,
.ee-page .ee-content .wpforms-field-label{
  font-size:13.5px !important;
  font-weight:600 !important;
  color:var(--ee-ink-2) !important;
  letter-spacing:.02em;
}
.ee-page .ee-content .wpcf7-form p{
  margin-bottom:18px;
}

/* ---------- tables ---------- */
.ee-page .ee-content table{
  width:100%;
  border-collapse:collapse;
  border-radius:16px;
  overflow:hidden;
  font-size:15px;
}
.ee-page .ee-content th{
  background:#f5f5f7;
  color:var(--ee-ink);
  font-weight:600;
  text-align:left;
  padding:14px 16px;
}
.ee-page .ee-content td{
  border-top:1px solid var(--ee-line);
  padding:14px 16px;
  color:var(--ee-body);
}

/* ---------- dark bands keep their contrast ---------- */
.ee-page .ee-content .dark,
.ee-page .ee-content .bottom-wave-banner,
.ee-page .ee-content .orange-banner{
  color:#fff;
}
.ee-page .ee-content .dark h2,
.ee-page .ee-content .dark h3,
.ee-page .ee-content .bottom-wave-banner h2,
.ee-page .ee-content .bottom-wave-banner h3,
.ee-page .ee-content .orange-banner h2,
.ee-page .ee-content .orange-banner h3{
  color:#fff !important;
}
.ee-page .ee-content .dark p,
.ee-page .ee-content .bottom-wave-banner p{
  color:rgba(255,255,255,.76) !important;
}

/* ---------- reveal ---------- */
.ee-rv{
  opacity:0;
  transform:translateY(28px);
  transition:opacity .85s var(--ee-ease),transform .85s var(--ee-ease);
  will-change:opacity,transform;
}
.ee-rv.in{opacity:1;transform:none}
.ee-rv-img{
  opacity:0;
  transform:scale(1.02);
  transition:opacity 1s var(--ee-ease),transform 1.2s var(--ee-ease);
}
.ee-rv-img.in{opacity:1;transform:none}

@media (prefers-reduced-motion: reduce){
  .ee-page .ee-content .hero-text > *{animation:none !important}
  .ee-rv,.ee-rv-img{opacity:1 !important;transform:none !important;transition:none !important}
  .ee-page .ee-content *{scroll-behavior:auto !important}
}

/* ---------- responsive ---------- */
@media (max-width: 1024px){
  .ee-page .ee-content .hero-banner{min-height:clamp(500px,72vh,700px) !important}
  .ee-page .ee-content .wp-block-columns{gap:24px}
}
@media (max-width: 860px){
  .ee-page .ee-content .wp-block-columns{flex-direction:column}
  .ee-page .ee-content .wp-block-column{flex:1 1 auto;width:100% !important;flex-basis:auto !important}
  .ee-page .ee-content .stats-grid{grid-template-columns:repeat(3,1fr) !important}
  .ee-page .ee-content .hero-text h1{font-size:clamp(34px,7.8vw,54px) !important}
}
@media (max-width: 600px){
  .ee-page .ee-content{font-size:16px}
  .ee-page .ee-content h2{font-size:clamp(24px,6.4vw,30px)}
  .ee-page .ee-content section:not(.hero-banner){padding-top:56px !important;padding-bottom:56px !important}
  .ee-page .ee-content .hero-banner{min-height:min(78vh,620px) !important;padding:110px 18px 70px !important}
  .ee-page .ee-content .hero-text h1{font-size:clamp(30px,9vw,42px) !important}
  .ee-page .ee-content .hero-text h2{font-size:16px !important}
  .ee-page .ee-content .hero-text p{font-size:14.5px !important}
  .ee-page .ee-content .hero-buttons{gap:10px !important;margin-top:26px !important}
  .ee-page .ee-content .btn-primary,
  .ee-page .ee-content .btn-secondary,
  .ee-page .ee-content a[class*="btn-"]{padding:13px 24px !important;font-size:14px !important}
  .ee-page .ee-content .stats-grid{grid-template-columns:repeat(2,1fr) !important}
  .ee-page .ee-content .ee-exp-grid,
  .ee-page .ee-content .services-grid,
  .ee-page .ee-content .team-grid,
  .ee-page .ee-content .features-grid{grid-template-columns:1fr !important}
}

/* ============================================================
   Legacy guide pages: turn the sticky side rail into a slim
   horizontal quick-nav and let the article use the full canvas.
   ============================================================ */
.ee-page .ee-content .wp-block-columns:has(> .my-sticky-column){
  display:block !important;
  max-width:1160px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
.ee-page .ee-content .wp-block-columns:has(> .my-sticky-column) > .my-sticky-column{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  flex:1 1 auto !important;
  flex-basis:auto !important;
  position:static !important;
  top:auto !important;
  margin:0 0 clamp(28px,4vw,46px) !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
.ee-page .ee-content .wp-block-columns:has(> .my-sticky-column) > .wp-block-column:not(.my-sticky-column){
  display:block !important;
  width:100% !important;
  max-width:none !important;
  flex:1 1 auto !important;
  flex-basis:auto !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
.ee-page .ee-content .quick-nav-box{
  position:static !important;
  top:auto !important;
  margin:0 !important;
  padding:18px 20px !important;
  background:#f5f5f7 !important;
  border:1px solid var(--ee-line) !important;
  border-radius:18px !important;
  box-shadow:none !important;
}
.ee-page .ee-content .quick-nav-box h3{
  margin:0 0 10px !important;
}
.ee-page .ee-content .quick-nav-box ul{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
}
.ee-page .ee-content .quick-nav-box li{
  margin:0 !important;
  padding:0 !important;
}
.ee-page .ee-content .quick-nav-box a{
  display:inline-block !important;
  padding:8px 14px !important;
  border-radius:999px !important;
  background:#fff !important;
  border:1px solid var(--ee-line) !important;
  font-size:13px !important;
  line-height:1.3 !important;
  color:var(--ee-ink-2) !important;
  transition:background .25s var(--ee-ease),color .25s var(--ee-ease),transform .25s var(--ee-ease) !important;
}
.ee-page .ee-content .quick-nav-box a:hover{
  background:var(--ee-orange) !important;
  border-color:var(--ee-orange) !important;
  color:#fff !important;
  transform:translateY(-1px) !important;
  padding-left:14px !important;
}

/* secondary page statement heading (the H1 that follows the hero) */
.ee-page .ee-content > h1.wp-block-heading{
  max-width:1000px !important;
  margin:clamp(48px,6vw,84px) auto 22px !important;
  padding:0 24px !important;
  font-size:clamp(30px,3.6vw,48px) !important;
  line-height:1.18 !important;
  letter-spacing:-.035em !important;
  text-align:center !important;
}
.ee-page .ee-content > h1.wp-block-heading + .wp-block-paragraph,
.ee-page .ee-content > h1.wp-block-heading + p{
  max-width:860px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  text-align:center;
  color:var(--ee-muted);
}
.ee-page .ee-content > .wp-block-heading:not(h1):not(h2){
  text-align:center;
}

/* reusable contact block */
.ee-page .ee-content .lianxifangshi-container{
  max-width:980px !important;
  margin:clamp(18px,3vw,34px) auto !important;
  padding:0 24px !important;
}
.ee-page .ee-content .lianxifangshi-title{
  margin:0 0 clamp(24px,3vw,36px) !important;
  font-size:clamp(26px,2.8vw,38px) !important;
  font-weight:700 !important;
  letter-spacing:-.03em !important;
  color:var(--ee-ink) !important;
}
.ee-page .ee-content .lianxifangshi-grid{
  gap:20px !important;
  margin-bottom:28px !important;
}
.ee-page .ee-content .lianxifangshi-card{
  width:calc(50% - 10px) !important;
  padding:26px !important;
  border-radius:22px !important;
  border:1px solid var(--ee-line) !important;
  box-shadow:0 1px 2px rgba(11,16,48,.03) !important;
  transition:transform .45s var(--ee-ease),box-shadow .45s var(--ee-ease),border-color .45s var(--ee-ease) !important;
}
.ee-page .ee-content .lianxifangshi-card:hover{
  transform:translateY(-5px) !important;
  border-color:rgba(245,130,31,.28) !important;
  box-shadow:0 30px 56px -32px rgba(11,16,48,.38) !important;
}
.ee-page .ee-content .whatsapp-card,
.ee-page .ee-content .wechat-card{
  padding:30px 22px !important;
}
.ee-page .ee-content .lianxifangshi-text strong{font-size:15.5px !important}
.ee-page .ee-content .lianxifangshi-text span{font-size:13.5px !important;color:var(--ee-muted) !important}
.ee-page .ee-content .qr-img{
  border-radius:14px !important;
  max-width:150px;
}
.ee-page .ee-content .social-qrcode-box{
  margin-top:18px !important;
}
.ee-page .ee-content .qr-tip{
  color:var(--ee-muted) !important;
  font-size:12.5px !important;
}

@media (max-width: 700px){
  .ee-page .ee-content .lianxifangshi-card{width:100% !important}
  .ee-page .ee-content .quick-nav-box ul{display:grid;grid-template-columns:repeat(2,1fr)}
  .ee-page .ee-content .quick-nav-box a{text-align:center}
}

/* ---------- compact masthead for pages without a hero ---------- */
.ee-page .ee-masthead{
  position:relative;
  overflow:hidden;
  padding:clamp(96px,12vw,150px) 24px clamp(74px,8vw,104px);
  text-align:center;
  color:#fff;
  background:
    radial-gradient(70% 80% at 18% 100%,rgba(245,130,31,.26),transparent 62%),
    radial-gradient(55% 70% at 86% 10%,rgba(58,84,196,.34),transparent 66%),
    linear-gradient(135deg,#050a2e 0%,#0a1148 62%,#070c34 100%);
}
.ee-page .ee-masthead::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:0;
  width:min(1100px,86%);
  height:1px;
  transform:translateX(-50%);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.24),transparent);
}
.ee-page .ee-masthead-inner{position:relative;z-index:1;max-width:1000px;margin:0 auto}
.ee-page .ee-masthead-kicker{
  margin:0 0 18px;
  font-size:11px;
  font-weight:700;
  letter-spacing:.24em;
  text-transform:uppercase;
  color:var(--ee-orange-2);
}
.ee-page .ee-masthead h1{
  margin:0;
  font-size:clamp(36px,5vw,66px);
  line-height:1.08;
  letter-spacing:-.04em;
  font-weight:700;
  color:#fff;
}
.ee-page .ee-masthead + .ee-content > .wp-block-group:first-child,
.ee-page .ee-masthead + .ee-content > .wp-block-columns:first-child{
  margin-top:clamp(34px,4vw,54px) !important;
}
.ee-page .ee-masthead + .ee-content > p:first-of-type{
  margin-top:clamp(44px,5vw,70px) !important;
}

/* carousel heroes stay visible when motion is reduced */
@media (prefers-reduced-motion: reduce){
  .ee-page .ee-content .hero-slides > .slide:first-child,
  .ee-page .ee-content .hero-bg-slider > .bg-slide:first-child{
    opacity:1 !important;
    transform:none !important;
    animation:none !important;
  }
}

/* hide leftover decorative rule when its heading is absent */
.ee-page .ee-content .intro-header:not(:has(h2)) .header-line{display:none}

/* trim the legacy empty spacer + oversized intro padding */
.ee-page .ee-content > .wp-block-group:empty{display:none !important}
.ee-page .ee-content .company-intro-section{
  padding:0 20px !important;
  margin:clamp(34px,4.4vw,58px) auto !important;
}
.ee-page .ee-content .intro-content{
  margin-bottom:clamp(30px,3.4vw,44px) !important;
}
.ee-page .ee-content .contact-page-wrapper{
  margin-top:clamp(18px,2.4vw,30px) !important;
  margin-bottom:clamp(30px,4vw,56px) !important;
}

/* section-level specificity for the legacy intro block */
.ee-page .ee-content section.company-intro-section{
  padding-top:0 !important;
  padding-bottom:0 !important;
  padding-left:20px !important;
  padding-right:20px !important;
  margin-top:clamp(30px,4vw,52px) !important;
  margin-bottom:clamp(30px,4vw,52px) !important;
}

/* legacy .container is used by many campaign pages — restore a modern one */
.ee-page .ee-content .container{
  width:100% !important;
  max-width:1160px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding-left:24px !important;
  padding-right:24px !important;
}
.ee-page .ee-content .section-header,
.ee-page .ee-content .highlights-container .highlight-header,
.ee-page .ee-content .journey-header{
  max-width:880px;
  margin-left:auto;
  margin-right:auto;
  text-align:center;
}
.ee-page .ee-content .section-header p,
.ee-page .ee-content .highlight-header p{
  color:var(--ee-muted) !important;
}
.ee-page .ee-content .deliverables-wrapper{
  max-width:1160px;
  margin-left:auto;
  margin-right:auto;
  padding-left:24px;
  padding-right:24px;
}

/* slightly tighter vertical rhythm than the first pass */
.ee-page .ee-content section:not(.hero-banner){
  padding-top:clamp(54px,6.2vw,86px) !important;
  padding-bottom:clamp(54px,6.2vw,86px) !important;
}

/* programme itinerary card grids use the full editorial width */
.ee-page .ee-content .card-grid-container{
  width:100% !important;
  max-width:1160px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding-left:24px !important;
  padding-right:24px !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:24px !important;
}
.ee-page .ee-content .itinerary-card{
  height:100%;
}

/* ============================================================
   City / programme itineraries: vertical timeline -> day cards
   ============================================================ */
.ee-page .ee-content .itinerary-slide{
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  padding:0 !important;
}
.ee-page .ee-content .itinerary-slide .timeline-container{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:18px !important;
  width:100% !important;
  padding:0 !important;
}
.ee-page .ee-content .itinerary-slide .timeline-node{
  display:flex !important;
  align-items:flex-start !important;
  gap:16px !important;
  padding:22px !important;
  margin:0 !important;
  background:#fff !important;
  border:1px solid var(--ee-line) !important;
  border-radius:22px !important;
  box-shadow:0 1px 2px rgba(11,16,48,.03) !important;
  transition:transform .45s var(--ee-ease),box-shadow .45s var(--ee-ease),border-color .45s var(--ee-ease) !important;
}
.ee-page .ee-content .itinerary-slide .timeline-node:hover{
  transform:translateY(-4px) !important;
  border-color:rgba(245,130,31,.28) !important;
  box-shadow:0 26px 52px -30px rgba(11,16,48,.38) !important;
}
.ee-page .ee-content .itinerary-slide .timeline-node::before{
  display:none !important;
}
.ee-page .ee-content .itinerary-slide .node-icon{
  position:static !important;
  flex:0 0 46px !important;
  width:46px !important;
  height:46px !important;
  border-radius:14px !important;
  font-size:16px !important;
  font-weight:700 !important;
  box-shadow:none !important;
}
.ee-page .ee-content .itinerary-slide .node-content{
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  padding:0 !important;
}
.ee-page .ee-content .itinerary-slide .node-content h3{
  margin:0 0 10px !important;
  font-size:18px !important;
  line-height:1.35 !important;
  letter-spacing:-.02em !important;
}
.ee-page .ee-content .itinerary-slide .node-content p{
  margin:0 0 6px !important;
  font-size:14.5px !important;
  line-height:1.65 !important;
}
.ee-page .ee-content .slider-header{
  max-width:1160px !important;
  margin:0 auto 26px !important;
  padding:0 0 18px !important;
  border-bottom:1px solid var(--ee-line) !important;
}
.ee-page .ee-content .slider-header h2{
  font-size:clamp(24px,2.4vw,32px) !important;
  letter-spacing:-.03em !important;
  color:var(--ee-ink) !important;
  margin:0 !important;
}
.ee-page .ee-content .itinerary-slider-wrapper{
  max-width:1160px !important;
  margin:clamp(30px,4vw,50px) auto !important;
  padding:0 24px !important;
}

@media (max-width: 760px){
  .ee-page .ee-content .itinerary-slide .timeline-container{
    grid-template-columns:1fr !important;
  }
  .ee-page .ee-content .itinerary-slide .timeline-node{
    padding:18px !important;
  }
}

/* philosophy ring -> four editorial principle cards */
.ee-page .ee-content .travel-philosophy-container{
  max-width:1160px !important;
  margin:0 auto !important;
  padding:0 24px !important;
  background:transparent !important;
  counter-reset:ee-phil;
}
.ee-page .ee-content .philosophy-title{display:none !important}
.ee-page .ee-content .philosophy-layout{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:20px !important;
  align-items:stretch !important;
}
.ee-page .ee-content .philosophy-text-col{display:contents !important}
.ee-page .ee-content .philosophy-ring-col{display:none !important}
.ee-page .ee-content .philosophy-layout .text-block{
  position:relative;
  padding:30px 30px 30px 32px !important;
  background:#fff !important;
  border:1px solid var(--ee-line) !important;
  border-radius:22px !important;
  text-align:left !important;
  transition:transform .45s var(--ee-ease),box-shadow .45s var(--ee-ease),border-color .45s var(--ee-ease) !important;
}
.ee-page .ee-content .philosophy-layout .text-block:hover{
  transform:translateY(-5px) !important;
  border-color:rgba(245,130,31,.28) !important;
  box-shadow:0 28px 56px -32px rgba(11,16,48,.38) !important;
}
.ee-page .ee-content .philosophy-layout .text-block::before{
  counter-increment:ee-phil;
  content:"0" counter(ee-phil);
  display:block;
  margin-bottom:16px;
  font-size:12px;
  font-weight:700;
  letter-spacing:.16em;
  color:var(--ee-orange);
}
.ee-page .ee-content .philosophy-layout .text-block h3{
  font-size:20px !important;
  margin:0 0 10px !important;
  color:var(--ee-ink) !important;
  text-align:left !important;
}
.ee-page .ee-content .philosophy-layout .text-block p{
  margin:0 !important;
  color:var(--ee-muted) !important;
  font-size:15.5px !important;
  line-height:1.7 !important;
  text-align:left !important;
}
@media (max-width: 760px){
  .ee-page .ee-content .philosophy-layout{grid-template-columns:1fr !important}
}

/* ============================================================
   Study-abroad editorial components
   ============================================================ */
.ee-page .ee-content .ee-soft{
  background:#f5f5f7 !important;
}
.ee-page .ee-content .ee-3col,
.ee-page .ee-content .ee-4col,
.ee-page .ee-content .ee-2col{
  display:grid !important;
  gap:clamp(18px,2.2vw,26px) !important;
  width:100%;
}
.ee-page .ee-content .ee-3col{grid-template-columns:repeat(3,minmax(0,1fr)) !important}
.ee-page .ee-content .ee-4col{grid-template-columns:repeat(4,minmax(0,1fr)) !important}
.ee-page .ee-content .ee-2col{grid-template-columns:repeat(2,minmax(0,1fr)) !important}

.ee-page .ee-content .ee-feature-card{
  position:relative;
  padding:30px !important;
}
.ee-page .ee-content .ee-feature-card .ee-num{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:40px;
  height:40px;
  margin-bottom:18px;
  border-radius:12px;
  background:rgba(245,130,31,.1);
  color:var(--ee-orange-deep);
  font-size:12px;
  font-weight:700;
  letter-spacing:.06em;
}
.ee-page .ee-content .ee-feature-card h3{
  margin:0 0 10px !important;
  font-size:19px !important;
}
.ee-page .ee-content .ee-feature-card p{
  margin:0 !important;
  font-size:15px !important;
  line-height:1.72 !important;
  color:var(--ee-muted) !important;
}
.ee-page .ee-content .ee-mini-list{
  list-style:none !important;
  margin:14px 0 0 !important;
  padding:0 !important;
}
.ee-page .ee-content .ee-mini-list li{
  position:relative;
  margin:7px 0 !important;
  padding-left:18px !important;
  font-size:14.5px !important;
  line-height:1.55 !important;
  color:var(--ee-muted) !important;
}
.ee-page .ee-content .ee-mini-list li::before{
  content:"";
  position:absolute;
  left:0;
  top:.62em;
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--ee-orange);
}
.ee-page .ee-content .ee-check-grid{
  align-items:stretch;
}
.ee-page .ee-content .ee-check{
  display:flex;
  gap:14px;
  padding:20px 22px;
  background:#fff;
  border:1px solid var(--ee-line);
  border-radius:18px;
  transition:transform .4s var(--ee-ease),box-shadow .4s var(--ee-ease) !important;
}
.ee-page .ee-content .ee-check:hover{
  transform:translateY(-4px);
  box-shadow:0 24px 46px -30px rgba(11,16,48,.35);
}
.ee-page .ee-content .ee-check .ee-tick{
  flex:0 0 24px;
  width:24px;
  height:24px;
  border-radius:50%;
  background:rgba(245,130,31,.12);
  color:var(--ee-orange-deep);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:13px;
  font-weight:700;
}
.ee-page .ee-content .ee-check strong{
  display:block;
  margin-bottom:3px;
  font-size:15px;
  color:var(--ee-ink);
}
.ee-page .ee-content .ee-check span{
  display:block;
  font-size:13.5px;
  line-height:1.6;
  color:var(--ee-muted);
}

/* four-step study plan */
.ee-page .ee-content .ee-plan{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:20px !important;
  counter-reset:ee-step;
}
.ee-page .ee-content .ee-plan-step{
  position:relative;
  padding:26px 24px 24px;
  background:#fff;
  border:1px solid var(--ee-line);
  border-radius:22px;
  transition:transform .45s var(--ee-ease),box-shadow .45s var(--ee-ease),border-color .45s var(--ee-ease) !important;
}
.ee-page .ee-content .ee-plan-step:hover{
  transform:translateY(-5px);
  border-color:rgba(245,130,31,.28);
  box-shadow:0 28px 54px -32px rgba(11,16,48,.38);
}
.ee-page .ee-content .ee-plan-step::before{
  counter-increment:ee-step;
  content:"0" counter(ee-step);
  display:inline-block;
  margin-bottom:14px;
  font-size:11px;
  font-weight:700;
  letter-spacing:.16em;
  color:var(--ee-orange-deep);
}
.ee-page .ee-content .ee-plan-step .ee-when{
  display:block;
  margin-bottom:9px;
  font-size:12px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--ee-muted);
}
.ee-page .ee-content .ee-plan-step h3{
  margin:0 0 9px !important;
  font-size:18px !important;
}
.ee-page .ee-content .ee-plan-step p{
  margin:0 !important;
  font-size:14px !important;
  line-height:1.65 !important;
  color:var(--ee-muted) !important;
}
.ee-page .ee-content .ee-note{
  max-width:860px;
  margin:24px auto 0 !important;
  padding:16px 20px;
  border-left:3px solid var(--ee-orange);
  background:#fff;
  border-radius:0 14px 14px 0;
  font-size:14px !important;
  line-height:1.7 !important;
  color:var(--ee-muted) !important;
  text-align:left;
}
.ee-page .ee-content .ee-soft .ee-note{background:rgba(255,255,255,.8)}

/* ---------- merged partner / curriculum sections ---------- */
.ee-page .ee-content .ee-partner-types{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:clamp(18px,2.2vw,26px) !important;
}
.ee-page .ee-content .ee-partner-type{
  overflow:hidden;
  background:#fff;
  border:1px solid var(--ee-line);
  border-radius:22px;
  box-shadow:0 1px 2px rgba(11,16,48,.03);
  transition:transform .45s var(--ee-ease),box-shadow .45s var(--ee-ease);
}
.ee-page .ee-content .ee-partner-type:hover{
  transform:translateY(-5px);
  box-shadow:0 28px 54px -34px rgba(11,16,48,.38);
}
.ee-page .ee-content .ee-partner-type img{
  width:100%;
  height:190px;
  object-fit:cover;
  display:block;
}
.ee-page .ee-content .ee-partner-type-body{
  padding:24px 26px 26px;
}
.ee-page .ee-content .ee-partner-type-body h3{
  margin:0 0 10px !important;
  font-size:19px !important;
}
.ee-page .ee-content .ee-partner-type-body p{
  margin:0 !important;
  font-size:15px !important;
  line-height:1.72 !important;
  color:var(--ee-muted) !important;
}
.ee-page .ee-content .ee-logo-wall{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:16px !important;
}
.ee-page .ee-content .ee-logo-wall .ee-logo{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:92px;
  padding:16px 22px;
  background:#fff;
  border:1px solid var(--ee-line);
  border-radius:16px;
}
.ee-page .ee-content .ee-logo-wall img{
  max-width:100%;
  max-height:54px;
  width:auto;
  height:auto;
  object-fit:contain;
  display:block;
}

/* closing CTA */
.ee-page .ee-content .ee-study-cta{
  position:relative;
  overflow:hidden;
  padding:clamp(70px,8vw,110px) 24px !important;
  text-align:center;
  color:#fff;
  background:
    radial-gradient(60% 80% at 20% 100%,rgba(245,130,31,.28),transparent 62%),
    linear-gradient(135deg,#050a2e,#0a1148 64%,#070c34) !important;
}
.ee-page .ee-content .ee-study-cta .ee-cta-inner{
  position:relative;
  z-index:1;
  max-width:840px;
  margin:0 auto;
}
.ee-page .ee-content .ee-study-cta .ee-kicker{
  margin:0 0 16px !important;
  font-size:11px;
  font-weight:700;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--ee-orange-2);
}
.ee-page .ee-content .ee-study-cta h2{
  margin:0 0 18px !important;
  font-size:clamp(30px,3.6vw,48px) !important;
  line-height:1.16 !important;
  letter-spacing:-.04em !important;
  color:#fff !important;
}
.ee-page .ee-content .ee-study-cta p{
  max-width:660px;
  margin:0 auto !important;
  font-size:16px !important;
  line-height:1.8 !important;
  color:rgba(255,255,255,.76) !important;
}
.ee-page .ee-content .ee-study-cta .ee-cta-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:14px;
  margin-top:32px;
}
.ee-page .ee-content .ee-study-cta .btn-secondary{
  background:rgba(255,255,255,.1) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.4) !important;
}

@media (max-width: 980px){
  .ee-page .ee-content .ee-4col{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  .ee-page .ee-content .ee-3col{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  .ee-page .ee-content .ee-partner-types{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  .ee-page .ee-content .ee-logo-wall{grid-template-columns:repeat(3,minmax(0,1fr)) !important}
}
@media (max-width: 720px){
  .ee-page .ee-content .ee-4col,
  .ee-page .ee-content .ee-3col,
  .ee-page .ee-content .ee-2col{grid-template-columns:1fr !important}
  .ee-page .ee-content .ee-plan{grid-template-columns:1fr !important}
  .ee-page .ee-content .ee-partner-types{grid-template-columns:1fr !important}
  .ee-page .ee-content .ee-logo-wall{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  .ee-page .ee-content .ee-study-cta .ee-cta-actions .btn-primary,
  .ee-page .ee-content .ee-study-cta .ee-cta-actions .btn-secondary{width:100% !important}
}

/* ============================================================
   2026-10-18 行程卡片缩略图修正
   统一全局 img{height:auto} 会覆盖卡片内的 height:100%，
   导致图片只显示上半截；这里提高优先级让图片铺满并裁剪。
   ============================================================ */
.ee-page .ee-content .itinerary-card .card-img-box img{
  height:100% !important;
  width:100% !important;
  object-fit:cover !important;
  display:block !important;
}
/* 移动端行程卡片改为单列，避免被统一 CSS 强制成两列挤窄 */
@media (max-width: 768px){
  .ee-page .ee-content .card-grid-container{
    grid-template-columns:1fr !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }
}
/* 银龄学院「精选课程亮点」：卡片高度随文字自适应，避免底部说明被截断 */
.ee-page .ee-content .highlight-card{
  height:auto !important;
  min-height:180px !important;
}
/* 银龄学院「精选课程亮点」：恢复图片贴右侧、卡片无额外内边距 */
.ee-page .ee-content .highlight-card{
  padding:0 !important;
}
