/* ASHRAYA Join — Theme-owned styles (ASHRAYA Colour Study)
 * Add this to the active theme stylesheet or enqueue as assets/css/ashraya-join.css.
 * The ASHRAYA Join plugin deliberately contains no page styling.
 */
body.page-id-622 .entry-title { display: none; }
.ashj { background: var(--ash-cream, #FEF7ED); color: var(--ash-ink, #20271F); min-height: 85vh; padding: clamp(40px, 7vw, 100px) 24px 100px; font-family: inherit; }
.ashj-shell { max-width: 1000px; margin-inline: auto; }
.ashj-top { display: flex; justify-content: space-between; gap: 12px; font-size: 10px; letter-spacing: .15em; }
.ashj h1, .ashj h2, .ashj h3 { font-family: inherit; color: inherit; }
.ashj h1 { font-size: clamp(44px, 6.5vw, 86px); line-height: 1.06; margin: 32px 0 18px; }
.ashj h2 { font-size: clamp(30px, 4vw, 55px); line-height: 1.12; margin: 30px 0 15px; }
.ashj h3 { font-size: clamp(22px, 3vw, 30px); margin: 12px 0; }
.ashj-welcome { text-align: center; max-width: 690px; margin: 62px auto 16px; }
.ashj-welcome h1, .ashj-email-sent h1 { font-family: var(--ash-heading-font, var(--ash-font-heading, inherit)); font-weight: inherit; }
.ashj-tagline { font-size: clamp(17px, 2vw, 23px); margin: 6px 0 22px; }
.ashj-lead { font-size: 16px; line-height: 1.85; max-width: 570px; margin-inline: auto; }
.ashj-progress { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 8px; margin: 42px 0 50px; }
.ashj-progress span { border-top: 1px solid currentColor; padding: 13px 0; font-size: 11px; opacity: .62; }
.ashj-progress .current { border-color: var(--ash-forest, #205039); color: var(--ash-forest, #205039); opacity: 1; font-weight: 650; }
.ashj-form { max-width: 700px; display: grid; gap: 18px; margin: 26px 0 22px; }
.ashj-entry-form { max-width: 410px; margin: 25px auto 12px; justify-items: stretch; }
.ashj-entry-form .ashj-button { justify-self: center; }
.ashj-entry-footnote { text-align: center; }
.ashj-field { display: grid; gap: 8px; font-size: 11px; letter-spacing: .07em; text-transform: uppercase; font-weight: 500; }
.ashj-field input, .ashj-field textarea, .ashj-select { box-sizing: border-box; width: 100%; border: 1px solid #c9bfb8; border-radius: 0; background: #fff; color: inherit; font: inherit; font-size: 15px; letter-spacing: normal; text-transform: none; padding: 15px; min-height: 48px; }
.ashj-field textarea { line-height: 1.7; } .ashj-select { max-width: 700px; }
.ashj-choices { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 12px; }
.ashj-choices label { background: var(--ash-powder-blue,#C4D1E1); border: 1px solid transparent; padding: 20px; display: flex; flex-direction: column; gap: 12px; cursor: pointer; }
.ashj-choices label:has(input:checked) { background: var(--ash-mint,#B0D9C1); border-color: var(--ash-forest,#205039); }
.ashj-choices input { accent-color: var(--ash-ink,#20271F); }
.ashj-choices strong { font-size: 19px; line-height: 1.2; } .ashj-choices small { font-size: 11px; line-height: 1.5; }
.ashj-button { display: inline-block; justify-self: start; border: 0; border-radius: 0; background: var(--ash-yellow,#F2DC53); color: var(--ash-ink,#20271F); padding: 16px 24px; text-decoration: none; text-transform: none; font: inherit; font-size: 12px; font-weight: 600; letter-spacing: .04em; cursor: pointer; }
.ashj-button:hover { filter: brightness(.96); }
.ashj-summary { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; margin: 30px 0; }
.ashj-summary>div { padding: 28px; border: 1px solid #d2c5bc; background: #fff; }
.ashj-summary span, .ashj-muted, .ashj-save-note { font-size: 12px; opacity: .75; } .ashj-summary p { white-space: normal; line-height: 1.7; }
.ashj-alert { background: var(--ash-blush,#FED0C1); padding: 15px; margin-top: 20px; }
.ashj-trap { position: absolute; left: -99999px; }
.ashj-save-note { margin-top: 50px; border-top: 1px solid #d2c5bc; padding-top: 18px; }
/* Noticeably different screen after sending the email. */
.ashj:has(.ashj-email-sent) { background: var(--ash-mint,#B0D9C1); }
.ashj-email-sent { min-height: 48vh; display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 12px; text-align: center; }
.ashj-email-sent h1 { margin: 0 0 8px; }
.ashj-email-sent p { margin: 0; max-width: 500px; }
@media(max-width:700px) { .ashj-progress { grid-template-columns: repeat(2,minmax(0,1fr)); } .ashj-choices,.ashj-summary { grid-template-columns: 1fr; } .ashj-welcome { margin-top: 38px; } .ashj-top { font-size: 9px; } }

/* Join journey: compact, centred composition with four distinct palette fields. */
body.ash-study .ashj .ashj-welcome h1,body.ash-study .ashj .ashj-email-sent h1{display:block!important;visibility:visible!important;opacity:1!important;color:var(--ash-forest,#205039)!important; font-size:clamp(42px,6vw,76px)!important;line-height:1.12!important;margin:0 0 12px!important}
.ashj{padding-top:32px;padding-bottom:64px}
.ashj-welcome{margin:34px auto 14px}
.ashj-lead{line-height:1.65}
.ashj-progress{gap:0;margin:26px 0 28px}
.ashj-progress span{border:0!important;padding:20px 10px;text-align:center;color:var(--ash-ink,#20271F)!important;opacity:1!important;font-weight:600;line-height:1.5}
.ashj-progress span:nth-child(1){background:var(--ash-mint,#B0D9C1)}
.ashj-progress span:nth-child(2){background:var(--ash-lilac,#D2A3D9)}
.ashj-progress span:nth-child(3){background:var(--ash-blush,#FED0C1)}
.ashj-progress span:nth-child(4){background:var(--ash-yellow,#F2DC53)}
.ashj-progress span.current{box-shadow:inset 0 -5px var(--ash-forest,#205039);font-weight:800}
.ashj-entry-form{margin-top:22px}
.ashj-email-sent{min-height:48vh}
@media(max-width:700px){.ashj-progress{grid-template-columns:repeat(2,minmax(0,1fr))}.ashj-welcome{margin-top:24px}}
