/* Relationship pages share the established ink, paper, gold and editorial type. */
.hero-content>.invitation{margin:18px auto 5px;max-width:640px;font-size:clamp(17px,1.35vw,23px);line-height:1.5}
.hero-content>.hero-play{margin-top:18px}
body[data-mode="context"] #sections>.section{display:none}
body[data-mode="context"] #sections>.section.is-current{display:block}
#sections .section{scroll-margin-top:100px}
.song-editorial{margin-top:70px;padding-top:32px;border-top:1px solid #d2ad7a30}
.song-editorial h2{font-size:28px;font-weight:400;letter-spacing:.07em}
.song-credits{display:grid;grid-template-columns:130px 1fr;gap:8px 24px;font-size:16px}.song-credits dt{color:var(--muted)}.song-credits dd{margin:0}
.relationship-heading{font-size:clamp(29px,3.2vw,46px);font-weight:400;line-height:1.2;letter-spacing:.04em;margin:0 0 18px}
.relationship-intro{color:var(--muted);max-width:480px;font-size:18px;line-height:1.7;margin:0 0 38px}
.relationship-stage{max-width:650px;min-height:180px}
.relationship-doors{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin:0 0 35px}
.relationship-action{display:inline-block;padding:12px 0;border:0;border-bottom:1px solid #d2ad7a40;border-radius:0;color:var(--paper);font:inherit;font-size:14px;letter-spacing:.14em;text-align:left;line-height:1.55;min-height:46px;text-decoration:none;background:transparent;transition:color .2s,border-color .2s}
.relationship-action:hover{color:var(--gold);border-color:var(--gold)}.relationship-action:focus-visible{outline:2px solid var(--gold);outline-offset:5px}.relationship-action:disabled{opacity:.5;cursor:wait}
.relationship-quiet{font-size:12px;letter-spacing:.1em;color:var(--muted);border-color:transparent}.relationship-back{margin-bottom:25px}
.relationship-path{font-size:12px;letter-spacing:.12em;color:var(--muted);margin:0 0 16px}
.relationship-form{max-width:510px}.relationship-form label{display:block;font-size:13px;letter-spacing:.06em;margin:23px 0 7px}
.relationship-form input:not([type=checkbox]),.relationship-form textarea{display:block;width:100%;font:inherit;font-size:17px;color:var(--paper);background:#f1e9dc05;border:1px solid #d2ad7a45;border-radius:0;padding:12px 13px;line-height:1.5;outline-offset:3px}
.relationship-form textarea{resize:vertical;min-height:105px}.relationship-form input:focus-visible,.relationship-form textarea:focus-visible{outline:1px solid var(--gold);border-color:var(--gold)}
.relationship-form .consent{display:flex;align-items:flex-start;gap:12px;font:15px/1.65 Georgia,serif;letter-spacing:0;margin:24px 0 10px;color:var(--muted)}.consent input{flex:none;margin-top:7px;accent-color:var(--gold);width:18px;height:18px}
.relationship-note{font-size:14px;line-height:1.65;color:var(--muted);max-width:510px;margin:18px 0}.relationship-status{font-size:16px;line-height:1.65;min-height:1.5em;margin:16px 0;color:var(--paper)}.relationship-status[data-error="true"]{color:#edbaac}
.relationship-form [aria-invalid="true"]{border-color:#edbaac!important}.relationship-form [hidden],[hidden].relationship-stage{display:none!important}
.relationship-honeypot{position:absolute!important;left:-10000px!important;opacity:0;pointer-events:none}
.relationship-form details>summary{font-size:13px;letter-spacing:.06em;min-height:44px;cursor:pointer;margin-top:18px}
.relationship-form .manual-copy{font-size:14px;min-height:160px;margin:15px 0}
.relationship-ports{margin-top:40px}.relationship-ports h3{font-size:12px;letter-spacing:.16em;font-weight:400;color:var(--muted)}
.post-listen{position:fixed;z-index:5;right:max(25px,env(safe-area-inset-right));bottom:calc(var(--mobile-player-height,70px) + 22px);max-width:420px;padding:15px 24px 12px;background:linear-gradient(115deg,#080f17ec,#080f17cf);border-left:1px solid #d2ad7a70;opacity:0;transform:translateY(8px);transition:opacity 700ms,transform 700ms}.post-listen.is-open{opacity:1;transform:none}.post-listen[hidden]{display:none}.post-listen p{margin:0 22px 8px 0;font-size:19px;font-style:italic}.post-listen .post-actions{display:flex;gap:18px;flex-wrap:wrap}.post-listen .relationship-action{font-size:10px;min-height:40px;padding:10px 0}.post-dismiss{position:absolute;right:2px;top:0;width:40px;height:40px;font-size:23px;color:var(--muted)}
body:not([data-mode="listen"]) .post-listen,html[data-threshold-flight] .post-listen{display:none}
@media(max-width:700px){body:not([data-mode="house"]) header nav{gap:clamp(8px,2.7vw,17px)}body:not([data-mode="house"]) header nav a{font-size:clamp(9px,2.5vw,11px);letter-spacing:.07em;white-space:nowrap}.hero-content>.invitation{max-width:330px;font-size:18px;margin:22px auto 5px}.hero-content>.hero-play{margin-top:20px}#sections .section{padding:190px 25px 100px;scroll-margin-top:0}.relationship-intro{font-size:17px}.relationship-action{font-size:12px}.post-listen{left:18px;right:18px;bottom:calc(var(--mobile-player-height,70px) + 12px);padding:12px 18px}.post-listen p{font-size:17px}.song-editorial{margin-top:45px}}
@media(max-width:1000px) and (max-height:500px) and (orientation:landscape){.hero-content>.invitation{font-size:14px;max-width:520px;margin:8px auto 3px}.hero-content>.hero-play{margin-top:7px}#sections .section{padding:95px max(30px,7vw) 90px;scroll-margin-top:0}.relationship-heading{font-size:30px}.relationship-intro{margin-bottom:22px}.post-listen{right:18px;left:auto;max-width:380px;bottom:calc(var(--mobile-player-height,50px) + 10px);padding:10px 20px}.post-listen p{font-size:16px}}
@media(prefers-reduced-motion:reduce){.post-listen,.relationship-action{transition:none}}
/* Context pages own their header clearance once, including short phone viewports. */
body[data-mode="context"] #sections{padding-top:0}
@media(min-width:701px) and (min-height:501px){#sections .section{padding-top:180px}}
@media(max-width:1000px) and (max-height:500px) and (orientation:landscape){#sections .eyebrow{margin-bottom:16px}.relationship-heading{font-size:27px;margin-bottom:12px}.relationship-intro{font-size:16px;margin-bottom:15px}.relationship-doors{flex-direction:row;flex-wrap:wrap;gap:8px 24px}.relationship-action{font-size:11px}}
.post-listen .relationship-status:empty{display:none}
