/* ShyFriends: a consistent, readable theme for public copy and member setup. */
:root{--ink:#203c38;--muted:#52645a;--paper:#fffdf8;--cream:#faf7f1;--sage:#edf1e9;--line:#cbd5cb;color-scheme:light}
body{background:var(--cream);color:var(--ink)}
.sf-home{font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.6}
.sf-home h1,.sf-home h2,.sf-home h3{font-family:Georgia,serif;font-weight:400}
.sf-home .hero{grid-template-columns:1.1fr 1fr;gap:48px;padding-top:52px}
.sf-home h1{font-size:clamp(2.6rem,4.7vw,4.3rem);line-height:1.1;letter-spacing:-.035em;overflow-wrap:break-word}
.sf-home h1 em{font-style:normal;color:#526a4c}
.sf-home .lead{font-size:1.08rem;max-width:540px;color:var(--muted);line-height:1.75}
.sf-home .hero figure img{border-radius:20px;max-height:580px}
.sf-home .age-note{font-size:.82rem;color:var(--muted);margin:8px 0 0}
.sf-home .note,.sf-home figcaption{color:var(--muted)}
.sf-home .button{border:1px solid var(--ink);border-radius:8px;min-height:48px;padding:13px 22px;text-align:center}
.sf-home .button:hover{background:#36564b}
.sf-home .recognition{padding:50px 32px;max-width:880px}
.sf-home .recognition h2{font-size:clamp(2rem,3.2vw,2.75rem)}
.sf-home .recognition>p:not(.eyebrow){color:var(--muted);max-width:690px}
.sf-home .preference-tags{list-style:none;padding:0;display:flex;gap:10px;flex-wrap:wrap;margin:22px 0 0}
.sf-home .preference-tags li{background:var(--sage);border:1px solid var(--line);padding:8px 14px;border-radius:24px;font-size:.9rem}
.sf-home .steps article{background:var(--paper);border-color:var(--line);border-radius:14px;padding:26px;display:flex;flex-direction:column;align-items:flex-start}
.sf-home .steps article h3{font-size:1.5rem;line-height:1.2;margin:22px 0 10px;letter-spacing:-.02em}
.sf-home .steps article p{font-size:.98rem;color:var(--muted)}
.sf-home .steps article a{margin-top:auto}
.sf-home .number{border-color:#9aaa94;min-width:42px;text-align:center;padding:7px}
.sf-home .comfort-section{padding:12px 32px 36px}
.sf-home .comfort-teaser{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:36px;background:var(--sage);padding:42px;border-radius:18px}
.sf-home .comfort-teaser p{color:var(--muted)}
.sf-home .comfort-teaser .eyebrow{color:var(--ink)}
.sf-home .mini-profile{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:26px;transform:none}
.sf-home .mini-profile h3{font-size:1.6rem;margin:8px 0 22px;line-height:1.25}
.sf-home .mini-profile .eyebrow{font-size:.67rem;margin-bottom:8px}
.sf-home .preference-row{border-top:1px solid var(--line);padding:16px 0}
.sf-home .preference-row:last-child{padding-bottom:0}
.sf-home .preference-row strong{display:block;font-size:.92rem}
.sf-home .preference-row span{display:block;font-size:.86rem;color:var(--muted);margin-top:3px}
.sf-home .text-link{display:inline-block;padding:12px 0;min-height:48px;font-weight:600}
.sf-home .coming{padding-bottom:38px}
.sf-home .bottom-cta{margin:0 32px 56px;padding:40px 28px;background:var(--sage);border-radius:18px;text-align:center}
.sf-home .bottom-cta h2{margin-top:0}
.sf-home .bottom-cta p{color:var(--muted)}
/* Also used by the preview and introductions; no API or account behavior changes. */
.mini-profile{transform:none!important}
body.sf-preview .hero h1{font-size:clamp(2.6rem,4.7vw,4.3rem)}
body.sf-preview .hero h1 em{font-style:normal;color:#526a4c}
body.sf-preview .hero-copy>p{max-width:540px;color:var(--muted);font-size:1.05rem}
body.sf-preview .hero-photo{border-radius:20px}
body.sf-preview .hero-stamp{display:none}
body.sf-preview .mini-profile .eyebrow{font-size:.65rem}
body.sf-preview .preference-row strong{font-size:.9rem}
body.sf-preview .preference-row span{font-size:.85rem}
.sf-introductions header{flex-wrap:wrap}
.sf-introductions .note,.sf-introductions small{color:var(--muted)}
@media(max-width:850px){.sf-home .hero{gap:28px}.sf-home .comfort-teaser{grid-template-columns:1fr;padding:30px}.sf-home .steps{grid-template-columns:1fr}}
@media(max-width:600px){.sf-home .hero{grid-template-columns:1fr;padding:32px 22px}.sf-home .hero figure{max-width:none}.sf-home h1{font-size:2.7rem}.sf-home .recognition{padding:32px 22px}.sf-home .comfort-section{padding:0 16px 28px}.sf-home .comfort-teaser{padding:25px 20px;gap:24px}.sf-home .mini-profile{padding:22px}.sf-home .bottom-cta{margin:0 16px 36px;padding:30px 20px}.sf-home .hero .actions{align-items:flex-start}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
