/* Three tools below Horoskop BAR. Reference proportions: ~46 : 24 : 30. */
.section-astrology .astro-tools {
  margin-top: var(--astro-tools-top-gap, 18px);
  padding: 0 0 36px;
  color: #42143e;
}
.section-astrology .astro-tools__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.54fr) minmax(0, .8fr) minmax(0, 1fr);
  gap: var(--astro-tools-columns-gap, 12px);
  align-items: stretch;
}
.section-astrology .astro-tools__card {
  position: relative;
  isolation: isolate;
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 437px;
  padding: 19px 17px 14px;
  overflow: hidden;
  border: 1px solid #e8bd96;
  border-radius: 4px;
  background: #fffbf7;
  box-shadow: 0 1px 5px rgba(89,39,57,.05);
}
.section-astrology .astro-tools__card--horoscopes {
  padding-inline: 20px;
  background: radial-gradient(circle at 45% 40%, #fffdfb 15%, #fff9f3 100%);
}
.section-astrology .astro-tools__card--cosmogram {
  background: radial-gradient(circle at 50% 42%, #fffdfa, #fff9f2 80%);
}
.section-astrology .astro-tools__heading {position: relative; z-index: 2; min-height: 83px; padding: 0 0 5px;}
.section-astrology .astro-tools__heading h2 {
  margin: 0 0 4px; color: #45163f;
  font: var(--ast-type-section-weight,600) var(--ast-type-section-size,32px)/1.03 var(--ast-font-display), Georgia, serif;
  letter-spacing: -.018em;
}
.section-astrology .astro-tools__heading p {
  margin: 0; max-width: 96%; color: #685f70;
  font: 400 12px/1.48 var(--ast-font-body), sans-serif;
}
.section-astrology .astro-tools__leaf {
  position:absolute;top:8px;right:17px;color:#daae79;font-size:20px;letter-spacing:4px;
}
.section-astrology .astro-tools__card--horoscopes .astro-tools__heading {padding-left:33px}
.section-astrology .astro-tools__card--horoscopes .astro-tools__heading:before {
  content:"✧";position:absolute;left:2px;top:2px;color:#d6a16f;font-size:30px;
}
.section-astrology .astro-tools__horoscope-links {
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;flex:1;position:relative;z-index:1;
}
.section-astrology .astro-tools__horoscope-link {
  min-height:150px;display:grid;grid-template-columns:37% minmax(0,1fr);
  align-items:stretch;gap:0;overflow:hidden;padding:0;
  text-decoration:none;color:#491b49;background:rgba(255,255,255,.88);
  border:1px solid #f0e4d7;border-radius:12px;transition:box-shadow .2s,transform .2s;
}
.section-astrology a.astro-tools__horoscope-link:hover,
.section-astrology a.astro-tools__horoscope-link:focus-visible {
  box-shadow:0 6px 16px rgba(104,16,68,.1);transform:translateY(-2px);
}
.section-astrology .astro-tools__horoscope-media {
  display:grid;place-items:center;min-width:0;min-height:100%;overflow:hidden;
  background:linear-gradient(155deg,#4a2851,#b77b84 48%,#f1c88c);
}
.section-astrology .astro-tools__horoscope-media--daily {background:linear-gradient(155deg,#dbac64,#fce7b9,#8c526a)}
.section-astrology .astro-tools__horoscope-media--weekly {background:linear-gradient(155deg,#202547,#6a5d93,#d6b7b5)}
.section-astrology .astro-tools__horoscope-media--monthly {background:linear-gradient(155deg,#b785a7,#eac3a8,#e7c874)}
.section-astrology .astro-tools__horoscope-media--yearly {background:linear-gradient(155deg,#a35478,#ebaaad,#ecb877)}
.section-astrology .astro-tools__horoscope-media img {
  display:block;width:100%;height:100%;object-fit:cover;aspect-ratio:1;
}
.section-astrology .astro-tools__horoscope-icon {
  display:block;text-align:center;font:400 56px/1 Georgia,serif;color:#fff5d4;
}
.section-astrology .astro-tools__horoscope-icon--weekly {color:#cd5870}
.section-astrology .astro-tools__horoscope-icon--monthly {font-size:45px;color:#c47d31}
.section-astrology .astro-tools__horoscope-icon--yearly {color:#db6474}
.section-astrology .astro-tools__horoscope-copy {
  display:flex;flex-direction:column;align-items:flex-start;gap:8px;
  min-width:0;padding:16px 12px 13px;
}
.section-astrology .astro-tools__horoscope-copy strong {
  font:600 clamp(17px,1.55vw,23px)/1.08 var(--ast-font-display),Georgia,serif;color:#552250
}
.section-astrology .astro-tools__horoscope-copy small {font:400 12px/1.4 var(--ast-font-body),sans-serif;color:#716477}
.section-astrology .astro-tools__arrow {
  display:inline-flex;align-items:center;gap:8px;
  margin-top:auto;color:#681044;font-size:14px;font-weight:750;line-height:1.3;
}
.section-astrology .astro-tools__arrow span {font-size:22px;line-height:1}
.section-astrology .astro-tools__pending-note {font-size:10px;color:#9a8b96;margin-top:auto}
.section-astrology .astro-tools__flourish {display:block;text-align:center;font-size:17px;color:#d9a56c;margin-top:13px;white-space:nowrap}
.section-astrology .astro-tools__cosmogram-illustration {flex:1;display:grid;place-items:center;min-height:218px}
.section-astrology .astro-tools__cosmogram-illustration img {max-width:100%;max-height:238px;width:100%;height:auto;object-fit:contain}
.section-astrology .astro-tools__cosmogram-note {text-align:center;font-size:11px;color:#8b6681;margin:4px 0 12px}
.section-astrology .astro-tools__cta {
  display:flex;align-items:center;justify-content:space-between;gap:8px;
  min-height:40px;border-radius:99px;text-decoration:none;padding:9px 16px;
  color:#fff;background:#681044;font-size:12px;font-weight:700;
}
.section-astrology .astro-tools__cta span {font-size:20px}
.section-astrology .astro-tools__cta--disabled {opacity:.58}
.section-astrology .astro-tools__card--calendar {
  border-color:#302038;color:#f7e8e9;
  background:
    radial-gradient(circle at 17% 8%,#e0ad78 0 1px,transparent 2px),
    radial-gradient(circle at 67% 4%,#e0ad78 0 1px,transparent 2px),
    radial-gradient(circle at 88% 52%,#f5ca99 0 1px,transparent 2px),
    radial-gradient(circle at 44% 62%,#cb9d83 0 1px,transparent 2px),
    linear-gradient(145deg,#1a142d 0%,#2a153b 54%,#321d40 100%);
  background-size:100% 100%;
}
.section-astrology .astro-tools__card--calendar .astro-tools__heading {padding-right:25px}
.section-astrology .astro-tools__card--calendar .astro-tools__heading h2 {color:#fff6f5;font-size:clamp(25px,2.1vw,33px)}
.section-astrology .astro-tools__card--calendar .astro-tools__heading p {color:#ded0db}
.section-astrology .astro-tools__moon {position:absolute;right:15px;top:5px;color:#ffd6a2;font:54px/1 Georgia,serif;transform:rotate(-16deg)}
.section-astrology .astro-tools__calendar-body {position:relative;z-index:1;margin-top:3px;border:1px solid #856582;border-radius:4px;background:rgba(29,18,46,.6);padding:9px 8px}
.section-astrology .astro-tools__month {display:flex;align-items:center;justify-content:space-between;gap:8px;border-bottom:1px solid #674968;padding-bottom:8px;color:#fff}
.section-astrology .astro-tools__month strong {font-size:13px;font-weight:600;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center}
.section-astrology .astro-tools__month a,.section-astrology .astro-tools__month span {font-size:23px;text-decoration:none;color:#f7d0ae;line-height:1;padding:0 4px}
.section-astrology .astro-tools__calendar-location {margin:7px 0 0;text-align:center;font:500 10px/1.35 var(--ast-font-body),sans-serif;color:#e7c9a9;letter-spacing:.015em}
.section-astrology .astro-tools__calendar-grid {width:100%;border-collapse:collapse;table-layout:fixed;font-size:12px;text-align:center;margin-top:8px}
.section-astrology .astro-tools__calendar-grid th {font-weight:600;color:#ccb9cb;font-size:10px;padding-bottom:4px}
.section-astrology .astro-tools__calendar-grid td {height:30px;padding:0;position:relative;color:#f1e7ed}
.section-astrology .astro-tools__calendar-grid td.is-outside {color:#78667e}
.section-astrology .astro-tools__calendar-grid td>span:first-child {display:grid;place-items:center;width:24px;height:24px;border-radius:50%;margin:auto}
.section-astrology .astro-tools__calendar-grid td.is-today>span:first-child {background:#cc6e9e;color:#fff;font-weight:700}
.section-astrology .astro-tools__event-dots {position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:center;gap:1px}
.section-astrology .astro-tools__event-dot {display:inline-block;width:7px;height:7px;border-radius:50%;background:#e8bd93;vertical-align:middle}
.section-astrology .astro-tools__event-dot--retrograde {background:#db82a6}
.section-astrology .astro-tools__event-dot--ingress {background:#cbb8f0}
.section-astrology .astro-tools__event-dot--aspect {background:#f2e5cb}
.section-astrology .astro-tools__astro-data {position:relative;z-index:1;margin:11px 0 12px;font-size:11px;line-height:1.5;color:#e2d3df}
.section-astrology .astro-tools__engine-pending {margin:0 0 10px;font-style:italic;color:#dfcadb}
.section-astrology .astro-tools__calendar-meta {position:relative;z-index:1;max-width:100%;margin-top:5px}
.section-astrology .astro-tools__calendar-legend {display:flex;flex-wrap:wrap;align-items:center;gap:4px 11px;margin-top:6px;color:#f3dfd5;font:500 10px/1.4 var(--ast-font-body),sans-serif}
.section-astrology .astro-tools__calendar-legend span {display:inline-flex;align-items:center;gap:5px}
.section-astrology .astro-tools__calendar-legend .astro-tools__event-dot {position:static;flex:0 0 7px}
.section-astrology .astro-tools__calendar-announcement {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.section-astrology .astro-tools__event-dot:focus-visible {outline:2px solid #fff3cd;outline-offset:2px}
.section-astrology .astro-tools__month strong:focus-visible {outline:2px solid #fff3cd;outline-offset:3px;border-radius:2px}

.section-astrology .astro-tools__card--calendar[aria-busy="true"] .astro-tools__calendar-layout {opacity:.62;transition:opacity .15s}

.section-astrology .astro-tools__legend {display:grid;grid-template-columns:1fr 1fr;gap:6px}
.section-astrology .astro-tools__legend span {display:flex;gap:6px;align-items:center}
.section-astrology .astro-tools__calendar-cta {display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:40px;width:100%;box-sizing:border-box;border-radius:99px;margin-top:auto;padding:9px 16px;color:#fff;background:#681044;text-decoration:none;font-weight:700;font-size:12px}
.section-astrology .astro-tools__calendar-cta span {font-size:19px}
.section-astrology .astro-tools__calendar-cta--disabled {opacity:1;cursor:default}
@media(max-width:1100px) {
 .section-astrology .astro-tools__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .section-astrology .astro-tools__card--horoscopes{grid-column:1/-1}
 .section-astrology .astro-tools__card{min-height:390px}
}
@media(max-width:650px) {
 .section-astrology .astro-tools__grid{grid-template-columns:1fr}
 .section-astrology .astro-tools__card--horoscopes{grid-column:auto}
 .section-astrology .astro-tools__card{min-height:0}
 .section-astrology .astro-tools__horoscope-links{grid-template-columns:1fr}
 .section-astrology .astro-tools__horoscope-link{min-height:122px;grid-template-columns:34% minmax(0,1fr)}
}

/* CP17: independently controlled typography/backgrounds; cosmogram illustration is a distinct asset. */
.section-astrology .astro-tools__card {
  background: var(--ast-tool-surface, #fffbf7);
  background-position: center center;
  background-size: cover;
}
.section-astrology .astro-tools__card--horoscopes.astro-tools__card--photo {
  background-image: linear-gradient(rgba(255,250,245,.55),rgba(255,250,245,.55)),var(--ast-tool-photo);
}
.section-astrology .astro-tools__card--cosmogram.astro-tools__card--photo {
  background-image: linear-gradient(rgba(255,250,245,.50),rgba(255,250,245,.50)),var(--ast-tool-photo);
}
.section-astrology .astro-tools__card--calendar.astro-tools__card--photo {
  background-image: linear-gradient(rgba(16,9,33,.14),rgba(16,9,33,.14)),var(--ast-tool-photo);
  /* Fit the entire image to both dimensions of this card; no cover-cropping. */
  background-size: 100% 100%;
  background-position: center center;
  background-repeat: no-repeat;
}
.section-astrology .astro-tools__heading h2 {font-size:var(--ast-tool-title-size,34px)}
.section-astrology .astro-tools__heading p {font-size:var(--ast-tool-subtitle-size,12px)}
.section-astrology .astro-tools__horoscope-copy strong {font-size:var(--ast-tool-item-title-size,21px)}
.section-astrology .astro-tools__horoscope-copy small {font-size:var(--ast-tool-item-description-size,12px)}
.section-astrology .astro-tools__cosmogram-note {font-size:var(--ast-tool-note-size,11px)}
.section-astrology .astro-tools__cta,
.section-astrology .astro-tools__calendar-cta {font-size:var(--ast-tool-button-size,12px)}
.section-astrology .astro-tools__month strong {font-size:var(--ast-tool-month-size,13px)}
.section-astrology .astro-tools__calendar-grid {font-size:var(--ast-tool-day-size,12px)}
.section-astrology .astro-tools__engine-pending {font-size:var(--ast-tool-status-size,10px)}
/* Date box occupies only the left portion. Flexible space keeps it centered
   vertically while preserving an unobstructed right side for background art. */
.section-astrology .astro-tools__calendar-layout {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex: 1 1 auto;
  min-height: 225px;
  width: 100%;
  position: relative;
  z-index: 1;
}
.section-astrology .astro-tools__calendar-body {
  flex: 0 0 58%;
  width: 58%;
  max-width: 206px;
  min-width: 145px;
  min-height: 270px;
  box-sizing: border-box;
  margin: 0;
  padding: 8px 5px;
  backdrop-filter: blur(2px);
}
.section-astrology .astro-tools__calendar-grid td {height:29px}
.section-astrology .astro-tools__card--calendar .astro-tools__heading {
  min-height: 78px;
}
.section-astrology .astro-tools__engine-pending {
  position:relative;
  z-index:1;
  line-height:1.3;
  margin: 0 0 4px;
  max-width: 94%;
  color: #dfd0e1;
}
.section-astrology .astro-tools__card--calendar .astro-tools__calendar-cta {
  position:relative;
  z-index:1;
  margin-top:4px;
}
@media(max-width:650px) {
  .section-astrology .astro-tools__card--calendar {min-height:390px}
  .section-astrology .astro-tools__calendar-body {width:56%;flex-basis:56%;max-width:215px}
  .section-astrology .astro-tools__heading h2 {overflow-wrap:anywhere}
}

.section-astrology .astro-tools__pending-note {font-size:var(--ast-tool-pending-size,10px)}
.section-astrology .astro-tools__calendar-grid th {font-size:var(--ast-tool-weekday-size,10px)}

.section-astrology .astro-tools__card--calendar .astro-tools__heading h2 {font-size:var(--ast-tool-title-size,32px)}

/* The horoscope title and copy remain readable in compact editorial columns. */
@media (min-width:651px) and (max-width:1310px) {
  .section-astrology .astro-tools__horoscope-copy {padding:12px 9px 10px}
  .section-astrology .astro-tools__horoscope-copy strong {font-size:clamp(15px,1.5vw,var(--ast-tool-item-title-size,21px))}
}

/* Scenic transition sits ABOVE the department-wide image or color, but
   BELOW each of the three independently styled Tools cards. */
.section-astrology .astro-tools--scenic {
  position: relative;
  isolation: isolate;
  padding-bottom: var(--astro-tools-scene-gap, 86px);
}
.section-astrology .astro-tools--scenic::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background-image: var(--astro-tools-scene-image);
  background-size: cover;
  background-position: center bottom;
  background-repeat: no-repeat;
  /* Reveal the page's real background through the scenic image:
     transparent at the top, opaque from 2/3 to 90% of the section,
     then gently transparent again across the bottom 10%. */
  -webkit-mask-image: linear-gradient(to bottom, transparent 0%, #000 66.6667%, #000 90%, transparent 100%);
  mask-image: linear-gradient(to bottom, transparent 0%, #000 66.6667%, #000 90%, transparent 100%);
}
.section-astrology .astro-tools--scenic .astro-tools__grid {
  position: relative;
  z-index: 1;
}
@media (max-width:650px) {
  .section-astrology .astro-tools--scenic {
    padding-bottom: min(var(--astro-tools-scene-gap, 86px), 90px);
  }
}
