/* Homepage-only presentation; shared components and other routes retain their styles. */
#home{--home-width:1120px}
#home>section:not(.hero){width:min(var(--home-width),calc(100% - 3rem));margin:0 auto;padding:clamp(2rem,4vw,3.5rem) clamp(1.25rem,3vw,2.5rem);min-width:0}
#home :is(h1,h2,h3){text-wrap:balance}
#home h2{font-size:clamp(1.8rem,3.2vw,2.7rem);line-height:1.18;margin-bottom:1.1rem}
#home h3{line-height:1.25}
#home p{line-height:1.7}
#home .hero{min-height:520px;display:flex;align-items:center}
#home .hero-content{width:min(700px,calc(100% - 3rem));padding:clamp(3rem,7vw,5rem) 0;margin-left:max(1.5rem,calc((100% - var(--home-width))/2));margin-right:auto}
#home .hero-content h1{font-size:clamp(2.5rem,5vw,4.6rem);line-height:1.08;max-width:17ch;margin-bottom:1.3rem}
#home .hero-content>p:not(.eyebrow){font-size:clamp(1rem,1.5vw,1.15rem);max-width:59ch}
#home .hero-content .actions{margin-top:1.5rem}
#home .hero-content .home-nonclinical{font-size:.78rem;margin-top:1.15rem;letter-spacing:.04em}
#home .home-who{background:var(--charcoal);color:var(--ivory);text-align:center;border-bottom:1px solid #5c5139}
#home .home-who .eyebrow,#home .home-who .text-link{color:#e3bb64}
#home .home-who h2{max-width:29ch}
#home .home-who>p:not(.eyebrow){max-width:73ch;margin-bottom:1.3rem}
#home .home-community{background:var(--ivory)}
#home .home-community header{margin-bottom:1.5rem}
#home .home-community-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:clamp(1.25rem,3vw,2.5rem);align-items:center}
#home .home-community figure{margin:0;min-width:0}
#home .home-community img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;border-radius:6px}
#home .home-community figcaption{font-size:.8rem;color:var(--muted);margin-top:.6rem;text-align:left}
#home .home-community-layout>div{text-align:left;min-width:0}
#home .home-community-layout h3{font-size:clamp(1.55rem,2.3vw,2rem);margin-bottom:.8rem}
#home .home-events{box-shadow:none}
#home .home-events-head{margin-bottom:1.5rem}
#home .home-events-head h2{font-size:clamp(1.8rem,3.2vw,2.7rem)}
#home .home-events .featured-event-card{grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr)}
#home .reflection-spinner{grid-template-columns:minmax(0,1fr) minmax(0,1fr);overflow:visible;gap:0}
#home .reflection-spinner>div{padding:clamp(1rem,2vw,1.75rem);min-width:0}
#home .reflection-spinner h2{font-size:clamp(1.7rem,2.8vw,2.35rem)}
#home .reflection-wheel-wrap{width:min(350px,100%);margin:1.3rem auto 1.5rem}
#home .reflection-result{min-height:0;overflow:visible;overflow-wrap:break-word}
#home .reflection-result h3{font-size:clamp(1.5rem,2.5vw,2.1rem)}
#home .home-philosophy{background:var(--ivory);color:#24211e}
#home .home-philosophy .split{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:center}
#home .home-philosophy-image{margin:0;min-width:0}
#home .home-philosophy-image img{display:block;width:100%;height:auto;border-radius:5px;object-fit:contain}
#home .home-philosophy-copy :is(h2,p,a,strong){color:#24211e;opacity:1;text-shadow:none}
#home .home-philosophy-copy .eyebrow,#home .home-philosophy-copy a{color:#76591c}
#home .home-philosophy h2{font-size:clamp(1.65rem,2.7vw,2.4rem)}
#home .home-philosophy .split>div{min-width:0;text-align:left}
#home .home-philosophy .split>div :is(p,h2){margin-left:0}
#home .home-philosophy em{font-style:normal;color:#76591c}
#home .home-philosophy a{display:inline-block;margin-top:.6rem;text-decoration:underline;text-underline-offset:.2em}
#home .experience-band{background:var(--ivory);color:var(--ink)}
#home .experience-lines{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem;margin:1.5rem auto}
#home .experience-lines strong{background:#c4ad75;color:#191915;border:1px solid #a88e52;border-radius:5px;padding:1.4rem 1rem;font-size:clamp(1.08rem,1.7vw,1.35rem);line-height:1.4;box-shadow:none}
#home .experience-lines button{display:flex;align-items:center;justify-content:center;min-height:105px;width:100%;padding:1.4rem 1rem;border:1px solid #a88e52;border-radius:5px;background:#c4ad75;color:#191915;font:700 clamp(1.08rem,1.7vw,1.35rem)/1.4 Georgia,serif;cursor:pointer;transition:background-color .2s ease,color .2s ease,box-shadow .2s ease}
#home .experience-lines button:is(:hover,:focus-visible,[aria-expanded="true"]){background:#191915;color:#e3bb64;border-color:#c4ad75;box-shadow:0 0 14px #c4ad7526}
#home .experience-lines button:focus-visible{outline:3px solid #5c5139;outline-offset:4px}
#home .experience-lines button[aria-expanded="true"]{box-shadow:inset 0 -4px #c4ad75,0 0 14px #c4ad7526}
#home .home-principle-explanation{max-width:75ch;min-height:5rem;margin:auto}
#home .home-principle-explanation p{margin:0;padding:1rem;border-left:3px solid #a88e52;text-align:left;background:#eee5d0;color:#191915}
#home .home-principle-explanation [hidden]{display:none!important}
#home .home-next-step{background:var(--paper)}
#home .home-next-step header{margin-bottom:1.5rem}
#home .home-pathway-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;align-items:stretch}
#home .home-pathway-grid article{display:flex;flex-direction:column;align-items:flex-start;text-align:left;min-width:0;padding:1.4rem;background:var(--ivory);border:1px solid var(--line);border-radius:5px}
#home .home-pathway-grid article{position:relative;background:#c4ad75;color:#191915;border-color:#a88e52;transition:background-color .2s ease,color .2s ease,box-shadow .2s ease}
#home .home-pathway-primary{display:flex;flex:1;flex-direction:column;align-items:flex-start;width:100%;color:inherit;text-decoration:none}
#home .home-pathway-primary::after{content:"";position:absolute;inset:0;border-radius:5px}
#home .home-pathway-primary .button{margin-top:auto;border-color:#191915;background:#191915;color:#e3bb64}
#home .home-pathway-grid .tag{color:inherit}
#home .home-pathway-grid article:is(:hover,:focus-within){background:#191915;color:#f6f1e5;border-color:#c4ad75;box-shadow:0 0 14px #c4ad7526}
#home .home-pathway-grid article:is(:hover,:focus-within) :is(h3,.tag){color:#e3bb64}
#home .home-pathway-primary:focus-visible{outline:none}
#home .home-pathway-primary:focus-visible::after{outline:3px solid #5c5139;outline-offset:4px}
#home .home-pathway-secondary{position:relative;z-index:2;margin-top:1rem;color:inherit}
#home .home-pathway-grid article:active{background:#25251f;color:#f6f1e5;box-shadow:inset 0 0 0 3px #c4ad75}
#home .home-pathway-grid h3{font-size:1.5rem}
#home .home-pathway-grid article p{margin-inline:0}
#home .home-pathway-grid .tag{font-size:.69rem;min-height:2.5em;line-height:1.5}
#home .home-pathway-grid article>.button,#home .home-pathway-actions{margin-top:auto}
#home .home-pathway-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem}
#home .home-pathway-grid .button{min-height:46px;padding:.75rem .9rem}
#home .home-organizing-belief{padding-top:1.75rem;margin-top:1.75rem;border-top:1px solid var(--line);text-align:center}
#home .home-organizing-belief>p{max-width:78ch;margin:.65rem auto;font-size:.95rem}
#home .home-organizing-belief strong{font:700 1.25rem/1.4 Georgia,serif}
#home .home-closing{background:var(--charcoal);color:var(--ivory);text-align:center}
#home .home-closing>p{max-width:62ch}
#home .home-closing .actions{justify-content:center;margin-top:1.3rem}
#home :is(.home-who,.home-community,.home-philosophy,.home-next-step,.home-closing) a:focus-visible{outline:3px solid var(--gold);outline-offset:5px}
@media(min-width:1101px){#home>section:not(.hero){width:min(var(--home-width),calc(100% - 9rem))}}
@media(max-width:900px){#home .home-pathway-grid{grid-template-columns:1fr}#home .home-pathway-grid .tag{min-height:0}#home .experience-lines{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
 #home .hero{min-height:460px}
 #home .hero-content{width:calc(100% - 3rem);margin-inline:1.5rem;padding-block:3rem}
 #home .home-community-layout,#home .home-philosophy .split,#home .reflection-spinner{grid-template-columns:minmax(0,1fr)}
 #home .reflection-spinner-copy{border-right:0;border-bottom:1px solid #4b4026}
 #home .home-community-layout>div{text-align:center}
 #home .home-events .featured-event-card{grid-template-columns:minmax(0,1fr)}
 #home .reflection-result{padding-top:1.5rem}
}
@media(max-width:480px){#home>section:not(.hero){width:calc(100% - 1.5rem);padding:1.75rem 1rem}#home .experience-lines{grid-template-columns:1fr}#home .reflection-spinner>div{padding:1rem 0}#home .hero-content h1{font-size:2.5rem}}
/* Explicit foreground/background stacking prevents the skyline falling behind the hero. */
#home .hero .hero-sky{z-index:0;opacity:1;background-image:url('/providence-riverfront-night.jpg');background-position:center 58%;background-size:cover}
#home .hero .home-hero-image{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center 58%}
#home .hero .hero-sky::after{z-index:1;background:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.22) 85%)}
#home .hero .hero-content{position:relative;z-index:2}
#home .hero::before{z-index:1}
@media(max-width:760px){#home .hero .home-hero-image{object-position:62% center}#home .hero .hero-sky::after{background:linear-gradient(90deg,rgba(0,0,0,.76),rgba(0,0,0,.38))}}
@media(prefers-reduced-motion:reduce){#home .experience-lines button,#home .home-pathway-grid article{transition:none}}
