/* Brodard's people and history: one photographic object, like a cherished album. */
.brodard-about{padding-bottom:100px}
.brodard-about .care-heading h2{font-size:clamp(50px,5.8vw,86px);line-height:1.05;max-width:1180px;letter-spacing:-.04em}
.brodard-about .care-layout{grid-template-columns:1.05fr 1fr;gap:8%;margin-top:65px;align-items:start}
.brodard-about .team-card{margin:0;padding:12px;background:#fffcf5;border:1px solid #e6dfd1;border-radius:36px 100px 36px 36px;box-shadow:0 28px 60px -35px #284b6266,0 4px 15px #284b620a;isolation:isolate;overflow:hidden;transition:box-shadow .5s}
.brodard-about .team-card:hover,.brodard-about .team-card:focus-within{box-shadow:0 36px 65px -32px #284b6275,0 4px 16px #284b6210}
.brodard-about .team-card .team-photo{position:relative;border-radius:25px 88px 22px 22px;overflow:hidden}
.team-card .team-photo img{width:100%;height:auto;display:block;transform:none;filter:none}
.team-location{position:absolute;bottom:18px;left:18px;padding:7px 14px;background:#fffcf5ed;color:#23475c;border-radius:30px;font-size:14px}
.brodard-about .team-card figcaption{display:flex;flex-direction:column;gap:3px;padding:22px 18px 21px;margin:0;line-height:1.4;text-align:left;font-style:normal}
.team-card figcaption>span:first-child{font:400 clamp(29px,3vw,38px)/1.1 var(--serif);color:#23475c}
.team-card figcaption>span:last-child{font:400 15px/1.65 Manrope,sans-serif;color:#476574}
.history-toggle{border:0;border-top:1px solid #23475c24;background:transparent;color:#23475c;display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;padding:18px;text-align:left;cursor:pointer;font:400 20px/1.4 Manrope,sans-serif;border-radius:0 0 22px 22px;min-height:82px}
.history-toggle small{display:block;font:400 14px/1.4 Manrope,sans-serif;color:#476574;margin-bottom:4px}
.history-plus{width:44px;height:44px;border-radius:50%;border:1px solid #9ab4c1;display:grid;place-items:center;font:300 30px/1 Manrope,sans-serif;flex-shrink:0;transition:transform .4s,background .4s}
.history-toggle:hover .history-plus{background:#dcebf2}.history-toggle[aria-expanded=true] .history-plus{transform:rotate(45deg);background:#dcebf2}
.history-toggle:focus-visible,.care-next:focus-visible,.first-contact:focus-visible,.first-step summary:focus-visible{outline:3px solid #4b7892;outline-offset:-3px}
.team-history{display:grid;grid-template-rows:0fr;visibility:hidden;transition:grid-template-rows .5s cubic-bezier(.2,.7,.2,1),visibility .5s}
.team-history.is-open{grid-template-rows:1fr;visibility:visible}.team-history>div{overflow:hidden;min-height:0}
.history-inner{padding:0 18px 24px}.history-inner>p{font:400 17px/1.8 Manrope,sans-serif;color:#476574;margin:0 0 18px}
.history-inner .history-year{font:400 76px/1.1 var(--serif);color:#23475c;margin:15px 0}.history-inner .history-last{font:400 28px/1.3 var(--serif);color:#23475c;margin-bottom:0}
.brodard-about .brodard-story{padding-top:25px}.brodard-about .brodard-story .story-lead{font:400 clamp(36px,4vw,56px)/1.1 var(--serif);letter-spacing:-.025em;color:#23475c;margin-bottom:25px}
.brodard-about .brodard-story>p{font-size:19px;line-height:1.8;max-width:540px;margin-bottom:19px;color:#476574}
.care-belief{padding:24px 0 22px;margin:25px 0 16px}.care-belief h3{font:400 clamp(29px,3.4vw,44px)/1.18 var(--serif);letter-spacing:-.02em;color:#23475c;margin:0 0 22px}.care-belief p{font:400 18px/1.8 Manrope,sans-serif;color:#476574;max-width:520px}
.brodard-about .brodard-story .care-promise{font-size:17px}
.care-next{display:flex;gap:32px;align-items:center;justify-content:space-between;width:fit-content;min-height:62px;margin-top:25px;border-bottom:1px solid #23475c66;font-size:19px;color:#23475c}.care-next>span:last-child{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#dcebf2;font-size:23px}
.quiet-garden{min-height:570px;justify-content:center;text-align:center;border:0}.quiet-garden .garden-copy{margin:0;padding:100px 7vw;max-width:1150px}.quiet-garden .garden-copy h2{font-size:clamp(52px,7.4vw,106px);line-height:1.06;letter-spacing:-.04em}.quiet-garden .garden-copy>p:last-child{font-size:20px;line-height:1.75;max-width:650px;margin:auto}.quiet-garden .garden-flower{inset:0 -10% 0 58%;opacity:.16;pointer-events:none}
.first-steps{padding-top:85px;padding-bottom:120px;gap:8%;grid-template-columns:1fr 1.05fr}
.first-intro h2{font-size:clamp(46px,4.8vw,68px)}.first-intro>p:last-child{font-size:19px}
.first-contact{display:flex;flex-direction:column;align-items:flex-start;gap:5px;margin-top:35px;color:#23475c}.first-contact>span{font-size:17px}.first-contact strong{font:400 clamp(30px,3.6vw,48px)/1.3 var(--serif);border-bottom:1px solid #23475c60;letter-spacing:.01em}.first-contact small{font-size:14px;color:#476574}
.first-sequence{padding-top:10px}.first-step{border-bottom:1px solid #23475c33;transition:background .35s;border-radius:0}.first-step:first-child{border-top:1px solid #23475c33}.first-step summary{font:400 clamp(27px,2.8vw,38px)/1.2 var(--serif);color:#23475c;display:grid;grid-template-columns:35px 1fr 34px;gap:17px;padding:26px 10px;min-height:94px;cursor:pointer}.first-step summary::-webkit-details-marker{display:none}.first-step summary:hover{background:#e8efec70}.first-step[open]{background:#e6efed70}.first-step .first-number{font-size:20px;color:#476574}.step-toggle{width:32px;height:32px;display:grid;place-items:center;font:300 27px/1 Manrope,sans-serif;transition:transform .3s}.first-step[open] .step-toggle{transform:rotate(45deg)}
.step-answer{padding:0 26px 24px 62px;animation:answer-in .35s ease-out}.first-step .step-answer p{font:400 18px/1.8 Manrope,sans-serif;color:#476574;padding:0;margin:0 0 18px}.first-step .step-answer .step-reassurance{font:400 25px/1.35 var(--serif);color:#23475c;margin:22px 0 0}
@keyframes answer-in{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:900px){.brodard-about .care-layout{gap:5%}.brodard-about .brodard-story{padding-top:8px}.brodard-about .brodard-story>p{font-size:18px}.history-toggle{font-size:17px}.care-belief{margin-top:5px}.first-steps{gap:5%}.first-step summary{font-size:28px;gap:10px}.step-answer{padding-left:53px}}
@media(max-width:650px){.brodard-about .care-heading h2{font-size:clamp(43px,10vw,62px);line-height:1.08}.brodard-about .care-layout{grid-template-columns:1fr;gap:42px;margin-top:38px}.brodard-about .team-card{padding:9px;border-radius:28px 74px 28px 28px}.brodard-about .team-card .team-photo{border-radius:19px 65px 19px 19px}.brodard-about .team-card figcaption{padding:20px 14px}.team-location{font-size:12px;bottom:12px;left:12px}.history-toggle{font-size:18px;padding:17px 14px}.history-inner{padding-left:14px;padding-right:14px}.brodard-about .brodard-story .story-lead{font-size:42px}.care-belief h3{font-size:35px}.brodard-about{padding-bottom:40px}.quiet-garden{min-height:520px}.quiet-garden .garden-copy{padding:80px 7vw}.quiet-garden .garden-copy h2{font-size:53px}.quiet-garden .garden-copy>p:last-child{font-size:18px}.first-steps{grid-template-columns:1fr;gap:38px;padding-top:55px;padding-bottom:75px}.first-intro h2{font-size:44px}.first-step summary{font-size:29px;grid-template-columns:29px 1fr 28px;gap:8px;padding:23px 8px}.step-answer{padding:0 18px 24px 45px}.first-contact strong{font-size:38px}.first-intro>p{font-size:18px}}
@media(prefers-reduced-motion:reduce){.team-card,.team-history,.history-plus,.step-toggle{transition:none!important}.step-answer{animation:none}}
html.calm .team-card,html.calm .team-history,html.calm .history-plus,html.calm .step-toggle{transition:none!important}html.calm .step-answer{animation:none}
/* The story opens on arrival; every member remains visible in the page flow. */
.history-heading{border-top:1px solid #23475c24;padding:18px;color:#23475c}
.history-heading small{display:block;font:400 14px/1.4 Manrope,sans-serif;color:#476574;margin-bottom:5px}
.history-heading h3{font:400 20px/1.4 Manrope,sans-serif;margin:0}
.whole-team{position:relative;z-index:1;max-width:1360px;margin:115px auto 10px}
.whole-team-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:48px}
.whole-team-heading .place{margin-bottom:9px}
.whole-team-heading h3{font:400 clamp(42px,5vw,70px)/1.08 var(--serif);letter-spacing:-.03em;color:#23475c;margin:0;width:57%}
.team-portraits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 35px}
.team-member{margin:0;min-width:0}
.member-photo{aspect-ratio:4/5;border-radius:26px 70px 26px 26px;overflow:hidden;background:#d8d8d8}
.member-photo img{display:block;width:100%;height:100%;object-fit:contain;object-position:center bottom}
.brodard-about .team-member figcaption{padding:19px 3px 0;margin:0;text-align:left}
.team-member h4{font:400 clamp(25px,2.7vw,36px)/1.15 var(--serif);color:#23475c;margin:0 0 8px}
.team-member figcaption p{font:400 16px/1.55 Manrope,sans-serif;color:#476574;margin:0}
@media(max-width:650px){.history-heading{padding:17px 14px}.history-heading h3{font-size:18px}.whole-team{margin-top:65px}.whole-team-heading{display:block;margin-bottom:30px}.whole-team-heading .place{margin-bottom:17px}.whole-team-heading h3{width:auto;font-size:42px}.team-portraits{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 17px}.member-photo{border-radius:18px 42px 18px 18px;aspect-ratio:3/4}.team-member h4{font-size:25px}.team-member figcaption p{font-size:14px}.brodard-about .team-member figcaption{padding-top:14px}}
@media(max-width:350px){.team-portraits{gap:28px 12px}.team-member h4{font-size:23px}.team-member figcaption p{font-size:13px}}
/* Compact portraits, with names and roles kept readable. */
.team-portraits{grid-template-columns:repeat(6,minmax(0,1fr));gap:24px;max-width:1180px;margin-inline:auto}
.member-photo{border-radius:18px 42px 18px 18px}
.team-member h4{font-size:25px}.team-member figcaption p{font-size:15px}
.brodard-about .team-member figcaption{padding-top:14px}
@media(max-width:1100px){.team-portraits{grid-template-columns:repeat(3,minmax(0,1fr));max-width:680px;gap:32px 30px}}
@media(max-width:650px){.team-portraits{grid-template-columns:repeat(2,minmax(0,1fr));max-width:290px;gap:28px 22px}.member-photo{aspect-ratio:3/4;border-radius:16px 36px 16px 16px}.team-member h4{font-size:24px}.team-member figcaption p{font-size:14px}}
