/* Premium relationship map: light editorial surface, gold astronomy accents. */
.hs-synastry-page { --syn-ink:#3b2947; --syn-muted:#716575; --syn-line:#eadfce; --syn-gold:#c49a3c; --syn-paper:#fffdf9; position:relative; z-index:1; }
.hs-synastry-hero { min-height:390px; display:flex; align-items:center; overflow:hidden; background:linear-gradient(105deg,rgba(255,253,249,.94) 0%,rgba(255,253,249,.82) 48%,rgba(247,239,231,.45) 100%); border-bottom:1px solid rgba(196,154,60,.18); }
.hs-synastry-hero__inner { width:min(1240px,calc(100% - 40px)); margin:0 auto; display:grid; grid-template-columns:minmax(0,1fr) 390px; gap:40px; align-items:center; }
.hs-synastry-hero__copy { max-width:680px; padding:54px 0; }
.hs-synastry-hero h1 { max-width:650px; margin:12px 0 18px; color:var(--syn-ink); font:600 clamp(42px,6vw,78px)/.98 Georgia,serif; letter-spacing:-.045em; }
.hs-synastry-hero p { max-width:640px; margin:0; color:#55485b; font-size:18px; line-height:1.7; }
.hs-synastry-hero__method { margin-top:22px!important; color:#8b6d35!important; font-size:13px!important; letter-spacing:.03em; }
.hs-synastry-hero__orb { height:330px; position:relative; opacity:.92; }
.hs-synastry-hero__orb-ring,.hs-synastry-hero__orb-line { position:absolute; display:block; }
.hs-synastry-hero__orb-ring { border:1px solid rgba(196,154,60,.55); border-radius:50%; left:50%; top:50%; transform:translate(-50%,-50%); }
.hs-synastry-hero__orb-ring--outer { width:300px; height:300px; box-shadow:0 0 0 18px rgba(196,154,60,.05),0 0 60px rgba(196,154,60,.12); }
.hs-synastry-hero__orb-ring--inner { width:205px; height:205px; border-color:rgba(141,102,135,.55); }
.hs-synastry-hero__orb-node { position:absolute; display:grid; place-items:center; width:42px; height:42px; border-radius:50%; color:var(--syn-ink); background:rgba(255,253,249,.9); box-shadow:0 5px 18px rgba(66,42,77,.14); font-size:25px; }
.hs-synastry-hero__orb-node--a { left:calc(50% - 135px); top:calc(50% - 25px); color:#a4772b; }
.hs-synastry-hero__orb-node--b { left:calc(50% + 94px); top:calc(50% + 44px); color:#8d6687; }
.hs-synastry-hero__orb-line { left:50%; top:50%; height:1px; width:265px; transform-origin:0 50%; background:linear-gradient(90deg,rgba(196,154,60,.7),rgba(141,102,135,.15)); }
.hs-synastry-hero__orb-line--one { transform:rotate(24deg); }
.hs-synastry-hero__orb-line--two { transform:rotate(-44deg); opacity:.45; }
.hs-synastry__body { width:min(1180px,calc(100% - 40px)); margin:0 auto; padding:40px 0 90px; }
.hs-synastry__privacy { display:flex; gap:11px; align-items:flex-start; max-width:880px; margin:0 auto 26px; padding:13px 16px; border:1px solid rgba(196,154,60,.28); border-radius:14px; color:#806d55; background:rgba(255,253,249,.72); font-size:13px; line-height:1.55; }
.hs-synastry__privacy>span:first-child { color:var(--syn-gold); font-size:20px; line-height:1; }
.hs-synastry__form { max-width:1100px; margin:0 auto; }
.hs-synastry__profiles { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.hs-synastry__profile { min-width:0; margin:0; padding:24px; border:1px solid var(--syn-line); border-radius:22px; background:rgba(255,253,249,.9); box-shadow:0 15px 45px rgba(66,42,77,.06); }
.hs-synastry__profile legend { width:100%; display:flex; align-items:center; gap:12px; padding:0; margin:0 0 22px; color:var(--syn-ink); }
.hs-synastry__profile legend small,.hs-synastry__profile legend strong { display:block; }
.hs-synastry__profile legend small { color:#a4772b; font-size:11px; letter-spacing:.14em; text-transform:uppercase; }
.hs-synastry__profile legend strong { margin-top:3px; font:600 23px Georgia,serif; }
.hs-synastry__profile-mark { display:grid; place-items:center; flex:0 0 44px; height:44px; border:1px solid rgba(196,154,60,.55); border-radius:50%; color:#9c742b; font:600 19px Georgia,serif; }
.hs-synastry__fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.hs-synastry__fields label,.hs-synastry__order label { display:block; min-width:0; color:#55485b; font-size:13px; }
.hs-synastry__fields label>span,.hs-synastry__order label>span { display:block; margin-bottom:6px; color:#55485b; font-weight:600; }
.hs-synastry__fields label small,.hs-synastry__order label small { display:block; margin-top:6px; color:#897b8d; font-size:11px; line-height:1.4; }
.hs-synastry__fields input,.hs-synastry__fields select,.hs-synastry__order input { width:100%; min-height:44px; box-sizing:border-box; padding:9px 11px; border:1px solid #d9cbbb; border-radius:10px; color:var(--syn-ink); background:#fff; font:inherit; }
.hs-synastry__fields input:focus,.hs-synastry__fields select:focus,.hs-synastry__order input:focus { outline:2px solid rgba(196,154,60,.36); outline-offset:1px; border-color:var(--syn-gold); }
.hs-synastry__fields label:nth-child(4),.hs-synastry__fields .hs-synastry__tz { grid-column:1/-1; }
.hs-synastry__place-status { min-height:18px; margin:12px 0 0; color:#8c6d34; font-size:12px; }
.hs-synastry__server-note { display:flex; gap:8px; justify-content:center; align-items:center; margin:22px auto 18px; color:#806d55; font-size:13px; text-align:center; }
.hs-synastry__server-note span { color:var(--syn-gold); font-size:22px; }
.hs-synastry__button { display:inline-flex; justify-content:center; align-items:center; gap:10px; min-height:50px; padding:12px 22px; border:0; border-radius:999px; cursor:pointer; font:600 14px/1.2 inherit; transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease; }
.hs-synastry__button:hover { transform:translateY(-2px); }
.hs-synastry__button:disabled { cursor:not-allowed; opacity:.5; transform:none; }
.hs-synastry__button--primary { display:flex; margin:0 auto; color:#fffdf9; background:#3b2947; box-shadow:0 10px 25px rgba(59,41,71,.2); }
.hs-synastry__button--gold { width:100%; color:#2b210e; background:var(--syn-gold); box-shadow:0 9px 20px rgba(196,154,60,.2); }
.hs-synastry__error { margin:14px auto; color:#a33e46; font-size:13px; text-align:center; }
.hs-synastry__progress { max-width:620px; margin:28px auto 0; }
.hs-synastry__progress ol { display:flex; gap:7px; padding:0; margin:0; list-style:none; }
.hs-synastry__progress li { flex:1; padding-top:9px; border-top:2px solid #dfd3c6; color:#a095a3; font-size:11px; text-align:center; }
.hs-synastry__progress li.is-active { border-color:var(--syn-gold); color:#806d35; }
.hs-synastry__progress li.is-done { border-color:#7c9b75; color:#55704f; }
.hs-synastry__preview { max-width:1100px; margin:54px auto 0; }
.hs-synastry__preview-heading { margin-bottom:18px; text-align:center; }
.hs-synastry__preview-heading h2 { margin:8px 0 0; color:var(--syn-ink); font:600 clamp(28px,4vw,46px)/1.05 Georgia,serif; }
.hs-synastry__visual-card { padding:19px; border:1px solid var(--syn-line); border-radius:24px; background:linear-gradient(135deg,#fffdf9,#fbf2e9); box-shadow:0 18px 50px rgba(66,42,77,.1); }
.hs-synastry__visual-head { display:flex; justify-content:center; gap:12px; color:var(--syn-ink); font:600 15px Georgia,serif; }
.hs-synastry__visual-head span:nth-child(2) { color:var(--syn-gold); }
.hs-synastry__map { display:block; width:100%; height:auto; min-height:290px; margin:5px auto 0; overflow:visible; }
.hs-synastry-map__ring { fill:none; stroke:rgba(196,154,60,.38); stroke-width:1.2; }
.hs-synastry-map__ring--inner { stroke:rgba(141,102,135,.35); stroke-dasharray:2 7; }
.hs-synastry-map__tick { stroke:rgba(196,154,60,.5); stroke-width:1; }
.hs-synastry-map__sign { fill:#9d8865; font:11px Georgia,serif; }
.hs-synastry-map__aspect { stroke-width:1.4; stroke-opacity:.58; stroke-dasharray:5 4; }
.hs-synastry-map__planet circle { stroke:#fffdf9; stroke-width:2; filter:drop-shadow(0 2px 3px rgba(59,41,71,.16)); }
.hs-synastry-map__planet--a circle { fill:#a4772b; }
.hs-synastry-map__planet--b circle { fill:#8d6687; }
.hs-synastry-map__glyph { fill:#fffdf9; font-size:12px; }
.hs-synastry-map__center { fill:#c49a3c; font:24px Georgia,serif; }
.hs-synastry__chart-legend { display:flex; justify-content:center; gap:24px; color:#716575; font-size:12px; }
.hs-synastry__legend-dot { display:inline-block; width:9px; height:9px; margin-right:6px; border-radius:50%; vertical-align:0; }
.hs-synastry__legend-dot--a { background:#a4772b; }.hs-synastry__legend-dot--b { background:#8d6687; }
.hs-synastry__planet-strip { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin-top:13px; }
.hs-synastry__planet-card { display:grid; grid-template-columns:auto 1fr; column-gap:8px; padding:12px; border:1px solid var(--syn-line); border-radius:14px; background:rgba(255,253,249,.86); }
.hs-synastry__planet-symbol { grid-row:span 2; color:var(--syn-gold); font-size:24px; line-height:1; }
.hs-synastry__planet-card strong { color:var(--syn-ink); font-size:12px; }.hs-synastry__planet-value { color:#716575; font-size:11px; }.hs-synastry__planet-value+ .hs-synastry__planet-value { color:#8d6687; }
.hs-synastry__aspect-panel { margin-top:28px; padding:20px; border:1px solid var(--syn-line); border-radius:20px; background:rgba(255,253,249,.82); }
.hs-synastry__panel-heading { display:flex; justify-content:space-between; align-items:center; margin-bottom:14px; }.hs-synastry__panel-heading>span:last-child { display:grid; place-items:center; width:27px; height:27px; border-radius:50%; color:#fff; background:#3b2947; font-size:12px; }
.hs-synastry__aspects { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.hs-synastry__aspect { display:grid; grid-template-columns:auto 1fr; gap:9px; min-width:0; padding:12px; border-left:3px solid var(--aspect-color); border-radius:0 12px 12px 0; background:#fffaf2; }.hs-synastry__aspect-icon { color:var(--aspect-color); font-size:15px; white-space:nowrap; }.hs-synastry__aspect strong,.hs-synastry__aspect span,.hs-synastry__aspect small { display:block; }.hs-synastry__aspect strong { overflow:hidden; color:var(--syn-ink); font-size:12px; text-overflow:ellipsis; white-space:nowrap; }.hs-synastry__aspect span { margin-top:2px; color:var(--aspect-color); font-size:11px; }.hs-synastry__aspect small { margin-top:5px; color:#897b8d; font-size:10px; }
.hs-synastry__composite-note { margin:16px 0 0; color:#806d55; font-size:13px; text-align:center; }
.hs-synastry__purchase { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr); gap:30px; max-width:1020px; margin:38px auto 0; padding:30px; border:1px solid rgba(196,154,60,.4); border-radius:24px; background:linear-gradient(120deg,#fffdf9,#f8eddd); box-shadow:0 20px 55px rgba(66,42,77,.1); }
.hs-synastry__purchase-copy h2 { margin:8px 0 12px; color:var(--syn-ink); font:600 clamp(28px,4vw,42px)/1.05 Georgia,serif; }.hs-synastry__purchase-copy h2 span { color:#a4772b; font:600 15px/1.2 inherit; white-space:nowrap; }.hs-synastry__purchase-copy p { margin:0; color:#55485b; line-height:1.65; }.hs-synastry__purchase-copy ul { display:grid; gap:8px; padding:0; margin:18px 0 0; list-style:none; color:#55485b; font-size:13px; }.hs-synastry__purchase-copy li span { margin-right:8px; color:var(--syn-gold); }
.hs-synastry__order { align-self:center; padding:20px; border:1px solid var(--syn-line); border-radius:17px; background:rgba(255,255,255,.65); }.hs-synastry__payment { margin-top:16px; padding-top:16px; border-top:1px solid var(--syn-line); }.hs-synastry__payment h3 { margin:0 0 7px; color:var(--syn-ink); font:600 17px Georgia,serif; }.hs-synastry__payment p { margin:0 0 8px; color:#716575; font-size:13px; }.hs-synastry__payment a { color:#8b6828; font-weight:700; }
.hs-synastry__disclaimer { max-width:850px; margin:28px auto 0; color:#897b8d; font-size:12px; line-height:1.6; text-align:center; }
@media (max-width:900px) { .hs-synastry-hero__inner { grid-template-columns:minmax(0,1fr) 270px; gap:20px; }.hs-synastry__aspects { grid-template-columns:repeat(2,minmax(0,1fr)); }.hs-synastry__purchase { grid-template-columns:1fr; } }
@media (max-width:700px) { .hs-synastry-hero { min-height:0; }.hs-synastry-hero__inner { display:block; width:min(100% - 28px,600px); }.hs-synastry-hero__copy { padding:44px 0 8px; }.hs-synastry-hero h1 { font-size:46px; }.hs-synastry-hero p { font-size:16px; }.hs-synastry-hero__orb { height:230px; transform:scale(.72); transform-origin:top center; margin:0 auto -60px; }.hs-synastry__body { width:min(100% - 28px,600px); padding-top:25px; }.hs-synastry__profiles { grid-template-columns:1fr; }.hs-synastry__profile { padding:19px; }.hs-synastry__planet-strip { grid-template-columns:repeat(2,minmax(0,1fr)); }.hs-synastry__aspects { grid-template-columns:1fr; }.hs-synastry__purchase { padding:21px; }.hs-synastry__map { min-height:220px; } }
@media (max-width:440px) { .hs-synastry__fields { grid-template-columns:1fr; }.hs-synastry__fields label:nth-child(4),.hs-synastry__fields .hs-synastry__tz { grid-column:auto; }.hs-synastry__profile legend strong { font-size:20px; }.hs-synastry__planet-card { padding:9px; }.hs-synastry__planet-card strong { font-size:11px; } }

/* 1.6.0.2 — one visual owner for the synastry page.
   The legacy compatibility-scene artwork contains a localized title inside
   the image. It is not used as a global backdrop. A single right-side crop is
   reused in the hero below, so the couple remains part of the premium product
   story without allowing the baked-in title to compete with the HTML heading. */
.hs-page-backdrop--synastry { display:none !important; }
body.hs-page--synastry { background:#fffaf4; color:#55485b; }
body.hs-page--synastry .hs-page-backdrop { display:none !important; }
body.hs-page--synastry .hs-header {
  position:relative;
  z-index:20;
  background:rgba(255,253,249,.97);
  border-bottom-color:rgba(128,106,80,.14);
}
body.hs-page--synastry main.hs-synastry-page {
  position:relative;
  z-index:1;
  isolation:isolate;
  background:transparent;
}
body.hs-page--synastry .hs-synastry-hero {
  position:relative;
  isolation:isolate;
  background:
    radial-gradient(circle at 82% 42%,rgba(210,177,214,.22),transparent 27%),
    radial-gradient(circle at 61% 18%,rgba(250,218,178,.28),transparent 34%),
    linear-gradient(105deg,#fffdf9 0%,#fffaf3 51%,#f6eee9 100%);
}
body.hs-page--synastry .hs-synastry-hero::before {
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(255,253,249,.34),transparent 62%);
}
body.hs-page--synastry .hs-synastry-hero__inner { position:relative; z-index:1; }
body.hs-page--synastry .hs-synastry__privacy,
body.hs-page--synastry .hs-synastry__profile { background:#fffdf9; }

/* The approved couple artwork returns as one deliberate hero object. Its
   right-side crop removes the embedded legacy title while retaining the couple,
   zodiac wheel and warm city light. */
body.hs-page--synastry .hs-synastry-hero__orb {
  height:360px;
  border:1px solid rgba(196,154,60,.25);
  border-radius:34px 34px 118px 34px;
  overflow:hidden;
  opacity:1;
  background:
    linear-gradient(105deg,rgba(255,253,249,.12),rgba(255,253,249,0) 48%,rgba(255,241,226,.12)),
    var(--hs-synastry-art) right center / auto 132% no-repeat;
  background-color:#f1ddd2;
  box-shadow:0 22px 55px rgba(66,42,77,.15),0 0 0 12px rgba(255,253,249,.45);
}
body.hs-page--synastry .hs-synastry-hero__art-glow {
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(255,253,249,.52),transparent 34%,rgba(255,236,214,.06) 100%);
  mix-blend-mode:screen;
}
body.hs-page--synastry .hs-synastry-hero__art-ring {
  position:absolute;
  right:8%;
  top:9%;
  width:78%;
  aspect-ratio:1;
  border:1px solid rgba(255,247,224,.58);
  border-radius:50%;
  box-shadow:0 0 0 12px rgba(255,247,224,.08),0 0 32px rgba(255,222,168,.22);
  pointer-events:none;
}
body.hs-page--synastry .hs-synastry-hero__art-ring::after {
  content:'';
  position:absolute;
  inset:14%;
  border:1px solid rgba(255,247,224,.42);
  border-radius:50%;
}
@media (max-width:900px) {
  body.hs-page--synastry .hs-synastry-hero__orb { height:320px; }
}
@media (max-width:700px) {
  body.hs-page--synastry .hs-synastry-hero__orb {
    width:min(100%,560px);
    height:270px;
    margin:18px auto 26px;
    transform:none;
    border-radius:28px 28px 86px 28px;
    background:
      linear-gradient(105deg,rgba(255,253,249,.16),transparent 48%,rgba(255,241,226,.08)),
      var(--hs-synastry-art-mobile, var(--hs-synastry-art)) right center / auto 230% no-repeat;
  }
  body.hs-page--synastry .hs-synastry-hero__art-ring { right:4%; top:5%; width:72%; }
}
