.about-page { background: var(--about-bg); color: var(--about-text,#586975); overflow: hidden; }
.about-page h1,.about-page h2,.about-page h3,.about-page blockquote { color:var(--about-title); font-family:Georgia,'Times New Roman',serif; font-weight:700; letter-spacing:-.035em; }
.about-page p { white-space:pre-line; line-height:1.6; }
.about-inner { max-width:1250px; margin:auto; padding-inline:3rem; }
.about-eyebrow { font-family:system-ui,sans-serif; font-size:.65rem; letter-spacing:.25em; font-weight:700; margin:0 0 1rem; }
.about-hero { max-width:1440px; margin:auto; }
.about-hero__photo { width:100%; height:clamp(330px,42vw,580px); object-fit:cover; object-position:center 10%; border-radius:0 0 46px 46px; }
.about-hero__intro { position:relative; margin:-155px 4% 0; }
.about-hero__label { background:var(--about-title); color:white; display:inline-block; padding:1rem 1.5rem; border-radius:12px 12px 0 0; margin:0; }
.about-hero__panel { display:grid; grid-template-columns:1.15fr 1fr; gap:3rem; align-items:center; background:var(--about-panel,#fff); padding:1.7rem 2rem; border-radius:0 20px 24px 24px; box-shadow:0 14px 28px #15354d0b; }
.about-hero h2 { font-size:clamp(2.8rem,5.3vw,5.3rem); line-height:.95; white-space:pre-line; margin:0; }
.about-hero__panel p { border-left:3px solid var(--about-accent); padding-left:2rem; margin:0; font-size:1rem; }
.about-story { display:grid; grid-template-columns:1fr 1.1fr .8fr; gap:3rem; padding-top:3rem; padding-bottom:3rem; align-items:center; }
.about-story blockquote { position:relative; font-size:clamp(2.2rem,3.6vw,3.8rem); white-space:pre-line; line-height:1.02; margin:1.7rem 0 0 1.4rem; }
.about-story blockquote::before { content:'“'; position:absolute; left:-.65em; top:-.25em; font-size:1.8em; color:var(--about-accent); }
.about-story blockquote::after { content:''; display:block; margin-top:1.4rem; height:3px; width:60px; background:var(--about-accent); }
.about-story h2 { font-size:1.9rem; line-height:1.1; }
.about-story__copy p { font-size:.95rem; margin:1.2rem 0 0; }
.about-story__visual { position:relative; margin:0; align-self:stretch; min-height:350px; }
.about-story__visual img { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; border-radius:80px 0 0 0; }
.about-story__visual figcaption { position:absolute; right:0; bottom:1.5rem; background:var(--about-panel,#fff); padding:1rem; max-width:80%; color:var(--about-accent); font-family:cursive; font-style:italic; font-size:1.5rem; white-space:pre-line; }
.about-approach { padding:2.5rem 0 3rem; background:var(--about-bg); }
.about-approach__heading { max-width:360px; position:relative; z-index:1; }
.about-approach h2 { font-size:clamp(2.3rem,3.8vw,3.7rem); line-height:.95; white-space:pre-line; margin:0 0 .7rem; }
.about-approach__heading > p:last-child { font-size:.85rem; }
.about-journey { position:relative; margin-top:-80px; }
.about-journey__line { position:absolute; inset:0; width:100%; height:250px; color:var(--about-accent); }
.about-journey ol { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(4,1fr); gap:1.5rem; position:relative; }
.about-step { padding-top:155px; }
.about-step--2 { padding-top:110px; }.about-step--3 { padding-top:45px; }.about-step--4 { padding-top:20px; }
.about-step img { width:100px; height:100px; border-radius:50%; object-fit:cover; border:5px solid var(--about-bg); margin-bottom:.5rem; }
.about-step h3 { font-size:1.45rem; margin:0 0 .3rem; }
.about-step p { font-size:.85rem; max-width:190px; margin:0; }
@media(max-width:900px) { .about-inner { padding-inline:1.75rem; } .about-hero__panel { gap:1.5rem; } .about-story { gap:1.75rem; grid-template-columns:1fr 1.2fr; } .about-story__visual { grid-column:1/-1; min-height:280px; } .about-story__visual img { object-position:center 40%; border-radius:20px; } .about-journey { margin-top:0; } .about-step { padding-top:55px; }.about-step--2 { padding-top:35px; }.about-step--3 { padding-top:15px; }.about-step--4 { padding-top:0; } .about-journey__line { height:130px; } }
@media(max-width:599px) { .about-inner { padding-inline:1.5rem; } .about-hero__photo { height:310px; border-radius:0 0 24px 24px; } .about-hero__intro { margin-top:-60px; } .about-hero__panel { grid-template-columns:1fr; padding:1.5rem; } .about-hero h2 { font-size:clamp(1.85rem,8.5vw,2.9rem); line-height:1; } .about-hero__panel p { padding-left:1rem; font-size:.9rem; } .about-story { grid-template-columns:1fr; gap:2rem; } .about-story blockquote { font-size:2.6rem; } .about-story__visual { min-height:330px; } .about-journey__line { display:none; } .about-journey ol { grid-template-columns:1fr; gap:1.4rem; margin-top:1.7rem; } .about-step { padding:0; display:flex; gap:1rem; align-items:center; } .about-step img { flex-shrink:0; width:82px; height:82px; margin:0; } .about-step p { max-width:none; } }



.about-page .about-eyebrow { color:var(--about-label); } .about-page .about-hero__label { color:var(--about-label,#fff); background:var(--about-accent); }
.about-rule { display:block; width:64px; height:3px; background:var(--about-accent); margin:1.1rem 0; }
.about-mission { position:relative; isolation:isolate; overflow:hidden; }
.about-mission__photo { position:absolute; inset:0; z-index:-3; width:100%; height:100%; object-fit:cover; }
.about-mission__wash { position:absolute; inset:0; z-index:-2; background:linear-gradient(90deg,var(--about-bg),color-mix(in srgb,var(--about-bg) 65%,transparent)); }
.about-mission__arc { position:absolute; right:-22%; top:-70%; width:70%; height:240%; background:var(--vision-bg); border:65px solid var(--about-accent); border-radius:50%; transform:rotate(22deg); z-index:-1; }
.about-mission__grid { display:grid; grid-template-columns:1fr 1fr; gap:clamp(4rem,20vw,18rem); padding-block:3.5rem; }
.about-mission h2 { font-size:clamp(1.8rem,2.8vw,2.8rem); line-height:1.02; white-space:pre-line; margin:0; }
.about-mission__copy > p:last-child,.about-mission__vision > p:last-child { font-size:.95rem; margin:0; }
.about-mission__vision { color:var(--vision-text); }
.about-mission__vision h2 { color:var(--vision-title); }
.about-values { padding-block:3.5rem; }
.about-values__grid { display:grid; grid-template-columns:.8fr 2fr; gap:3rem; }
.about-values h2,.about-community h2 { font-size:clamp(2rem,3.2vw,3.2rem); line-height:1.03; white-space:pre-line; margin:0; }
.about-values__items { display:grid; grid-template-columns:1fr 1fr; gap:2.5rem 3rem; list-style:none; margin:0; padding:0; }
.about-values__items li { display:flex; gap:1.3rem; align-items:flex-start; }
.about-values__number { color:var(--about-accent); font:700 2.5rem/1 Georgia,serif; }
.about-values h3 { font-size:1.65rem; margin:0 0 .6rem; padding-bottom:.4rem; border-bottom:2px solid color-mix(in srgb,var(--about-accent) 30%,transparent); }
.about-values__items p { font-size:.9rem; margin:0; }
.about-community { display:grid; grid-template-columns:1.1fr 2.5fr .5fr; max-width:1440px; margin:auto; }
.about-community__intro { padding:2.5rem 2rem 2.5rem 3rem; }
.about-community__intro > p:last-child { font-size:.95rem; margin:0; }
.about-community__collage { display:grid; grid-template-columns:.9fr 1fr 1fr; grid-template-rows:1fr 1fr; gap:6px; min-height:410px; }
.about-community__tile { position:relative; min-width:0; margin:0; overflow:hidden; }
.about-community__tile--1 { grid-row:1 / 3; }.about-community__tile--4 { grid-column:2; }.about-community__tile--5 { grid-column:3; }
.about-community__tile img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.about-community__tile figcaption { position:absolute; bottom:0; inset-inline:0; padding:1.1rem .8rem; background:linear-gradient(transparent,#102c43b8); color:var(--about-panel,#fff); font-family:cursive; font-style:italic; font-size:1.25rem; line-height:1.25; white-space:pre-line; }
.about-community__tile figcaption:empty { display:none; }
.about-community__note { display:flex; flex-direction:column; justify-content:center; padding:1rem; color:var(--about-accent); background:var(--about-panel); }
.about-community__note p { font:italic 1.4rem/1.4 cursive; }
.about-community__note .about-rule { width:40px; }
.about-conversation { position:relative; isolation:isolate; padding-block:3.5rem; }
.about-conversation__watermark { position:absolute; inset:0; height:100%; max-width:40%; object-fit:contain; opacity:.12; z-index:-1; }
.about-conversation__grid { display:grid; grid-template-columns:1.3fr 1fr; gap:3rem; align-items:center; }
.about-conversation blockquote { font-size:clamp(2rem,3.5vw,3.5rem); line-height:1.07; white-space:pre-line; margin:0; padding-left:2.5rem; position:relative; }
.about-conversation blockquote::before { content:'“'; position:absolute; left:0; top:-.15em; font-size:1.8em; color:var(--about-accent); }
.about-conversation__action { border-left:3px solid var(--about-accent); padding-left:2rem; }
.about-conversation__button { display:inline-flex; gap:1.3rem; align-items:center; padding:.85rem 1.4rem; background:var(--about-button); color:var(--about-button-text); border-radius:8px; font-weight:700; font-size:.9rem; text-decoration:none; }
.about-conversation__button:hover { color:var(--about-button-text); filter:brightness(1.12); }
.about-conversation__button:focus-visible { outline:3px solid var(--about-accent); outline-offset:4px; }
@media(max-width:900px) { .about-mission__grid { gap:3rem; } .about-mission__arc { width:90%; right:-40%; } .about-values__grid { grid-template-columns:1fr; gap:1.5rem; } .about-community { grid-template-columns:1fr; } .about-community__intro { padding:2rem; } .about-community__collage { min-height:450px; } .about-community__note { flex-direction:row; gap:1rem; align-items:center; } .about-community__note p { margin:0; white-space:normal; } }
@media(max-width:599px) { .about-mission__grid { grid-template-columns:1fr; padding-block:2.5rem; gap:2rem; } .about-mission__arc { display:none; } .about-mission__vision { background:var(--vision-bg); padding:1.5rem; border-radius:12px; } .about-values__items { grid-template-columns:1fr; gap:1.8rem; } .about-values__number { min-width:45px; } .about-community__collage { min-height:460px; grid-template-columns:1fr 1fr; grid-template-rows:200px 130px 130px; } .about-community__tile--1 { grid-row:1; grid-column:1 / 3; } .about-community__tile--4,.about-community__tile--5 { grid-column:auto; } .about-conversation__grid { grid-template-columns:1fr; gap:1.5rem; } .about-conversation__action { padding-left:1.25rem; } }
.about-community h2 { font-size:clamp(1.8rem,2.7vw,2.6rem); }
