/* Illuminated travel gallery: original photographs, shared edges, equal cards. */
body[data-shoulder] .aahil-wonders {
  position: relative;
  isolation: isolate;
  padding: clamp(22px,2.5vw,34px);
  border: 0;
  border-radius: 0;
  background: radial-gradient(ellipse at 18% 40%,#146ca930,transparent 55%),radial-gradient(ellipse at 92% 74%,#6d43bc1a,transparent 45%);
  box-shadow: none;
}
body[data-shoulder] .wonders-heading {
  padding-bottom: 25px;
  border-bottom: 1px solid #91dfff26;
}
body[data-shoulder] .wonders-heading .eyebrow { color: #e5c58f; letter-spacing: .22em; }
body[data-shoulder] .wonders-heading h2 {
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(38px,4.3vw,60px);
  font-weight: 400;
  letter-spacing: -.045em;
  line-height: 1.08;
  margin: 16px 0 12px;
  color: #f7f7ef;
}
body[data-shoulder] .wonders-heading h2 em {
  background: linear-gradient(100deg,#fff0cd,#e7bd78 70%,#93eaff);
  background-clip: text;
  color: transparent;
}
body[data-shoulder] .wonders-intro { color: #bfd7ef; }
body[data-shoulder] .wonders-tally { margin-right: 10px; }
body[data-shoulder] .wonders-tally-ring {
  position: relative;
  width: 112px;
  height: 112px;
  padding: 5px;
  background: conic-gradient(from -90deg,#ffe1a3 0 20%,#79eaff 45% var(--wonder-completion,71.43%),#173451 var(--wonder-completion,71.43%) 100%);
  box-shadow: 0 0 24px #64d9ff2e,0 0 0 5px #0b2241;
}
body[data-shoulder] .wonders-tally-ring::before {
  content: '';
  position: absolute;
  inset: -11px;
  border: 1px dashed #77dfff63;
  border-radius: 50%;
  animation: wonder-ring-orbit 45s linear infinite;
  pointer-events: none;
}
body[data-shoulder] .wonders-tally strong { color: #ffe3b2; background: #091b35; }
body[data-shoulder] .wonders-tally strong span { color: #bedaf0; }
body[data-shoulder] .wonders-tally small { margin-top: 20px; color: #d9cba9; }
body[data-shoulder] .wonders-console {
  grid-template-columns: minmax(0,1.4fr) minmax(0,1fr);
  padding: 20px 0 0;
  gap: clamp(28px,4vw,58px);
  margin: 18px 0 30px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
body[data-shoulder] .wonders-console::before { display: none; }
body[data-shoulder] .wonder-photo-portal { padding: 17px 12px 38px; }
body[data-shoulder] .wonder-photo-portal::before {
  content: '';
  position: absolute;
  inset: 6px 1px 49px 23px;
  border: 1px solid #7ee8ff57;
  border-radius: 23px;
  background: linear-gradient(125deg,#c4f8ff0d,transparent 40%,#9980ff12);
  box-shadow: 0 0 26px #25c3ff1f;
  pointer-events: none;
}
body[data-shoulder] .wonder-photo-portal::after {
  content: '';
  position: absolute;
  left: 7%;
  right: 7%;
  bottom: 15px;
  height: 21px;
  border: 1px solid #72e8ff80;
  border-radius: 50%;
  background: radial-gradient(ellipse,#44bfff36,transparent 68%);
  box-shadow: 0 0 22px #3acfff44,inset 0 0 10px #38b9ff26;
  pointer-events: none;
}
body[data-shoulder] .wonder-orbit {
  inset: -4px -12px 10px;
  border-color: #85eaff;
  opacity: .23;
  transform: rotate(-14deg) scaleY(.85);
  box-shadow: 0 0 28px #22c4ff25;
}
body[data-shoulder] .wonder-photo,
body[data-shoulder] .wonder-photo:hover {
  height: clamp(340px,30vw,430px);
  border: 1px solid #9deeff;
  border-radius: 18px;
  background: #081b33;
  box-shadow: 0 22px 42px #0007,0 0 4px #8de9ff80,0 0 28px #16afff30;
  transform: none;
}
body[data-shoulder] .wonder-photo [data-wonder-backdrop] {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: blur(20px) brightness(.45) saturate(.8);
  transform: scale(1.15);
  opacity: .85;
  z-index: 0;
  pointer-events: none;
}
body[data-shoulder] .wonder-photo [data-wonder-image] {
  position: relative;
  z-index: 1;
  object-fit: contain;
  filter: none;
}
body[data-shoulder] .wonder-photo-label {
  left: 14px;
  bottom: 14px;
  padding: 8px 10px;
  border: 1px solid #d0ad6b70;
  border-radius: 999px;
  background: #05172ddc;
  color: #f4ddad;
  backdrop-filter: blur(8px);
}
body[data-shoulder] .wonder-enlarge {
  width: 40px;
  height: 40px;
  background: #061a35b8;
  border-color: #edc98b;
  color: #ffe3b2;
}
body[data-shoulder] .wonder-coordinate { bottom: 0; left: 50%; transform: translateX(-50%); white-space: nowrap; color: #8cdfff; font-size: 8px; }
body[data-shoulder] .wonder-story { padding: 18px 0; }
body[data-shoulder] .wonder-ordinal {
  top: -28px;
  right: 0;
  font-size: clamp(110px,11vw,150px);
  color: transparent;
  -webkit-text-stroke: 1px #92daff;
  opacity: .17;
}
body[data-shoulder] .wonder-visited {
  background: #d4a85813;
  color: #f6d59b;
  border-color: #efc78280;
  border-radius: 999px;
}
body[data-shoulder] .wonder-story .eyebrow { margin-top: 24px; color: #91e6ff; letter-spacing: .12em; }
body[data-shoulder] .wonder-story h3 {
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(34px,3.9vw,50px);
  font-weight: 400;
  line-height: 1.12;
  letter-spacing: -.035em;
  margin-bottom: 20px;
  color: #fff2dc;
}
body[data-shoulder] .wonder-story > p:not(.eyebrow) { max-width: 350px; color: #c4d9ed; line-height: 1.8; }
body[data-shoulder] .wonder-story .wonder-album {
  background: linear-gradient(110deg,#ffdf9a,#e6b971);
  border: 1px solid #ffe9ba;
  border-radius: 999px;
  color: #10213a;
  box-shadow: 0 6px 24px #edbd551c;
  margin: 22px 0 25px;
  min-height: 46px;
  padding-inline: 22px;
}
body[data-shoulder] .wonder-tour-controls { gap: 9px; }
body[data-shoulder] .wonder-tour-controls button {
  height: 44px;
  min-width: 44px;
  border-radius: 50%;
  background: #0b27434d;
  border-color: #74cbe969;
  color: #bcefff;
}
body[data-shoulder] .wonder-tour-controls [data-wonder-pause] { border-radius: 999px; padding-inline: 16px; }
body[data-shoulder] .wonder-progress { height: 3px; margin-top: 18px; background: #67bdf225; }
body[data-shoulder] .wonder-progress i { background: linear-gradient(90deg,#4ad9ff,#b8f5ff,#ffda9b); box-shadow: 0 0 9px #4be1ff85; }
body[data-shoulder] .wonder-tour-note { color: #8badcd; }
body[data-shoulder] .wonder-collection-label { border-top: 1px solid #91dfff26; padding-top: 22px; margin-bottom: 16px; color: #e4c793; }
body[data-shoulder] .wonder-collection-label > span:last-child { color: #b3d3ed; }
body[data-shoulder] .wonder-stamps { gap: 12px; padding-top: 0; }
body[data-shoulder] .wonder-stamp,
body[data-shoulder] .wonder-stamp.is-ahead {
  border: 1px solid #76c9ee4d;
  border-radius: 15px;
  background: linear-gradient(150deg,#13325288,#0a1937c9);
  box-shadow: 0 8px 16px #00112240;
}
body[data-shoulder] .wonder-stamp-art { aspect-ratio: 1.08; background: #071b35; }
body[data-shoulder] .wonder-stamp-art img { object-fit: cover; }
body[data-shoulder] .wonder-stamp-art > span {
  top: 9px;
  left: 8px;
  padding: 5px 7px;
  border: 1px solid #f0d19b52;
  border-radius: 999px;
  color: #ffe6b9;
  background: #081b32d9;
}
body[data-shoulder] .wonder-stamp-copy,
body[data-shoulder] .wonder-stamp[aria-pressed="true"] .wonder-stamp-copy { padding: 13px 11px 15px; gap: 9px; }
body[data-shoulder] .wonder-stamp strong { font-size: 14px; color: #f8efdb; }
body[data-shoulder] .wonder-stamp small { color: #9cc2de; }
body[data-shoulder] .wonder-stamp-number { color: #c7a86f; right: 9px; top: 14px; }
body[data-shoulder] .wonder-stamp[aria-pressed="true"] {
  border-color: #f1cc8b;
  background: linear-gradient(150deg,#173c62,#101f3c);
  box-shadow: 0 0 0 1px #ffe0a329,0 0 24px #4fdcff30;
}
body[data-shoulder] .wonder-stamp:hover:not(.is-ahead) { border-color: #adeaff; box-shadow: 0 0 18px #4fcfff33; }
body[data-shoulder] .wonder-stamp.is-ahead { border-style: dashed; }
body[data-shoulder] .wonder-stamp.is-ahead .wonder-stamp-art {
  background: radial-gradient(ellipse at 50% 70%,#1c78aa30,transparent 75%),#0b1d38;
  color: #82e8ff;
}
body[data-shoulder] .wonder-stamp-art svg { width: 90%; height: 90%; filter: drop-shadow(0 0 6px #4acbff6b); }
body[data-shoulder] .wonder-stamp.is-ahead .wonder-stamp-art > span { border: 0; color: #9fcde2; }
body[data-shoulder] .aahil-wonders :is(button,a):focus-visible { outline: 3px solid #ffe0a3; outline-offset: 4px; }
body[data-shoulder] .aahil-wonders.is-motion-held .wonders-tally-ring::before,
body.is-paused[data-shoulder] .wonders-tally-ring::before { animation-play-state: paused; }
@keyframes wonder-ring-orbit { to { transform: rotate(360deg); } }
@media (max-width:1100px) {
  body[data-shoulder] .wonder-stamps {
    display: flex;
    gap: 12px;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-snap-type: x mandatory;
    padding: 3px 4px 16px;
    margin-inline: -4px;
    scrollbar-width: thin;
    scrollbar-color: #5481a1 transparent;
  }
  body[data-shoulder] .wonder-stamp,
  body[data-shoulder] .wonder-stamp.is-ahead { flex: 0 0 164px; scroll-snap-align: start; }
}
@media (max-width:760px) and (min-width:651px) {
  body[data-shoulder] .wonders-console { grid-template-columns: 1fr; gap: 10px; }
  body[data-shoulder] .wonder-photo,
  body[data-shoulder] .wonder-photo:hover { height: 390px; }
}
@media (max-width:650px) {
  body[data-shoulder] .aahil-wonders { padding: 22px 14px; }
  body[data-shoulder] .wonders-heading { gap: 15px; padding-bottom: 20px; }
  body[data-shoulder] .wonders-heading .eyebrow { font-size: 7px; letter-spacing: .13em; }
  body[data-shoulder] .wonders-heading h2 { font-size: clamp(28px,7vw,37px); }
  body[data-shoulder] .wonders-tally-ring { height: 72px; width: 72px; padding: 4px; }
  body[data-shoulder] .wonders-tally-ring::before { inset: -7px; }
  body[data-shoulder] .wonders-tally { margin-right: 5px; margin-top: 10px; }
  body[data-shoulder] .wonders-tally small { font-size: 6px; margin-top: 14px; }
  body[data-shoulder] .wonders-console { grid-template-columns: 1fr; padding: 10px 0 0; gap: 10px; margin: 13px 0 25px; }
  body[data-shoulder] .wonder-photo-portal { padding: 14px 7px 35px; }
  body[data-shoulder] .wonder-photo-portal::before { inset: 4px 0 45px 17px; }
  body[data-shoulder] .wonder-photo,
  body[data-shoulder] .wonder-photo:hover { height: clamp(290px,82vw,370px); }
  body[data-shoulder] .wonder-orbit { inset-inline: -4px; }
  body[data-shoulder] .wonder-story { padding: 8px 3px; }
  body[data-shoulder] .wonder-story h3 { font-size: 35px; }
  body[data-shoulder] .wonder-ordinal { top: -12px; font-size: 105px; }
  body[data-shoulder] .wonder-story .wonder-album { margin: 20px 0; }
  body[data-shoulder] .wonder-collection-label { padding-top: 18px; }
}
@media (prefers-reduced-motion:reduce) {
  body[data-shoulder] .wonders-tally-ring::before { animation: none; }
  body[data-shoulder] .wonder-stamp,
  body[data-shoulder] .wonder-stamp-art img { transition: none; }
}

/* Independent wonder albums share the blue and gold gallery presentation. */
.wonder-album-dialog{width:min(1000px,94vw);max-height:94dvh;overflow:auto;padding:0;background:#0a1d36;color:#eaf5ff;border:1px solid #88dfff80;border-radius:18px;box-shadow:0 0 30px #26bfff25,0 30px 100px #0008}
.wonder-album-dialog::backdrop{background:#020916df;backdrop-filter:blur(10px)}
.wonder-album-top,.wonder-album-bottom{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 22px}
.wonder-album-top{border-bottom:1px solid #89dfff30}.wonder-album-top small{font-size:9px;letter-spacing:.12em;color:#d9c395}.wonder-album-top h2{font:400 27px/1.2 Georgia,serif;color:#ffe5b5;margin:8px 0 0}
.wonder-album-dialog button{flex-shrink:0;width:44px;min-height:44px;border:1px solid #82cff06e;border-radius:50%;background:#123853;color:#e6f7ff;font-size:18px;cursor:pointer}.wonder-album-dialog button:disabled{opacity:.3}.wonder-album-dialog button:focus-visible{outline:3px solid #ffdfa2;outline-offset:3px}
.wonder-album-image{height:min(64dvh,660px);padding:12px;background:radial-gradient(ellipse,#153658,#081a30)}.wonder-album-image img{width:100%;height:100%;object-fit:contain}.wonder-album-bottom p{color:#bbd7ec;font-size:12px;line-height:1.6;text-align:center;margin:0}
@media(max-width:650px){.wonder-album-top,.wonder-album-bottom{padding:14px;gap:12px}.wonder-album-top h2{font-size:22px}.wonder-album-bottom p{font-size:11px}}

body[data-shoulder] .wonder-photo-counter{color:#efcf96;font-size:10px;letter-spacing:.08em;margin-top:12px;display:block}body[data-shoulder] .wonder-photo-counter[hidden]{display:none}
