.portrait{margin:0;position:relative}.portrait__frame{border-radius:var(--radius-lg);aspect-ratio:4/5;background:var(--sand);isolation:isolate;position:relative;overflow:hidden;box-shadow:0 40px 80px -55px #052227b3}.portrait__frame img{object-fit:cover;width:100%;height:100%;transition:transform 1.2s var(--ease)}.portrait:hover .portrait__frame img{transform:scale(1.04)}.portrait__fallback{background:radial-gradient(130% 80% at 50% -10%, var(--teal-600), transparent 58%), linear-gradient(168deg, var(--teal-800) 0%, var(--teal-900) 48%, var(--ink) 100%);place-items:center;display:grid;position:absolute;inset:0}.portrait__fallback:after{content:"";pointer-events:none;background:linear-gradient(175deg,#ffffff24,#fff0 42%);position:absolute;inset:0}.portrait__mark{width:54%;display:block;position:relative}.portrait__mark img{border-radius:50%;width:100%;height:auto}.portrait__rings{place-items:center;display:grid;position:absolute;inset:0}.portrait__rings i{animation:ringPulse 7s var(--ease) infinite;border:1px solid #faf8f324;border-radius:50%;position:absolute}.portrait__rings i:first-child{aspect-ratio:1;width:60%}.portrait__rings i:nth-child(2){aspect-ratio:1;width:80%;animation-delay:-2.3s}.portrait__rings i:nth-child(3){aspect-ratio:1;width:100%;animation-delay:-4.6s}@keyframes ringPulse{0%,to{opacity:.9;transform:scale(1)}50%{opacity:.35;transform:scale(1.07)}}.portrait__overlay{color:var(--paper);background:linear-gradient(#0000,#031418d1 55%);padding:clamp(1.5rem,3vw,2.25rem) clamp(1.25rem,2.5vw,1.9rem) clamp(1.1rem,2.2vw,1.6rem);position:absolute;bottom:0;left:0;right:0}.portrait__caption{font-size:var(--step--1);color:var(--ink-60);margin-top:1.1rem;line-height:1.6}
.approach{background:linear-gradient(180deg, var(--paper), var(--sand) 120%)}.approach__grid{align-items:start;gap:clamp(2.5rem,6vw,5.5rem);display:grid}@media (min-width:980px){.approach__grid{grid-template-columns:.85fr 1.15fr}}.approach__media{position:sticky;top:7rem}.approach__media .portrait__frame{aspect-ratio:1}@media (max-width:979px){.approach__media{max-width:460px;position:relative;top:0}}.approach__stamp{background:var(--paper);border:1px solid var(--line-soft);border-radius:999px;align-items:center;gap:.85rem;padding:.9rem 1.3rem;display:flex;position:absolute;bottom:22%;right:clamp(-1rem,-1vw,0rem);box-shadow:0 18px 40px -22px #05222773}.approach__stamp-num{font-family:var(--display);color:var(--lime-deep);font-size:1.9rem;line-height:1}.approach__stamp-label{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-60);font-size:.72rem;font-weight:600;line-height:1.35}.approach__body{flex-direction:column;gap:1.6rem;display:flex}.approach__title{margin-top:.4rem}.approach__title .mask-line:nth-child(2){color:var(--teal);font-variation-settings:"SOFT" 70, "WONK" 1, "opsz" 144;font-style:italic}.approach__lede{max-width:54ch}.approach__para{max-width:58ch;color:var(--ink-60);line-height:1.75}.approach__chips{flex-wrap:wrap;gap:.5rem;margin-block:.5rem 1.5rem;display:flex}.approach__chips li{letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--line);color:var(--teal);transition:background .4s var(--ease), color .4s var(--ease), border-color .4s var(--ease), transform .4s var(--ease);background:#ffffff8c;border-radius:999px;padding:.55em 1.1em;font-size:.74rem;font-weight:600}.approach__chips li:hover{background:var(--ink);border-color:var(--ink);color:var(--paper);transform:translateY(-2px)}.approach__pillars{gap:1.75rem;padding-top:2rem;display:grid}@media (min-width:640px){.approach__pillars{grid-template-columns:repeat(3,1fr);gap:2rem}}.approach__pillars h3{font-family:var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--lime-deep);margin-bottom:.7rem;font-size:.74rem;font-weight:700}.approach__pillars p{color:var(--ink-60);font-size:.92rem;line-height:1.65}@media (max-width:720px){.approach__grid{gap:2.5rem}.approach__media .portrait__frame{aspect-ratio:1}.approach__stamp{gap:.65rem;padding:.7rem 1.05rem;bottom:12%;right:0}.approach__stamp-num{font-size:1.5rem}.approach__stamp-label{letter-spacing:.1em;font-size:.6rem}.approach__body{gap:1.5rem}.approach__chips{gap:.5rem;margin-block:.6rem 1.4rem}.approach__chips li{letter-spacing:.06em;padding:.5em 1em;font-size:.72rem}.approach__pillars{gap:1.9rem;padding-top:1.75rem}.approach__pillars h3{margin-bottom:.5rem;font-size:.78rem}.approach__pillars p{font-size:1rem;line-height:1.65}}.approach--compact{padding-block:clamp(3.25rem,6vh + 2rem,6rem)}.approach--compact .approach__grid{align-items:center;gap:clamp(2rem,4vw,4rem)}@media (min-width:980px){.approach--compact .approach__grid{grid-template-columns:.72fr 1.28fr}}.approach--compact .approach__media{justify-self:start;width:100%;max-width:420px;position:relative;top:0}.approach--compact .approach__media .portrait__frame{aspect-ratio:1}.approach--compact .approach__body{gap:1.25rem}.approach__more{letter-spacing:.14em;text-transform:uppercase;color:var(--teal);transition:gap .35s var(--ease), color .35s var(--ease);align-items:center;gap:.6rem;font-size:.76rem;font-weight:700;display:inline-flex}.approach__more:hover{color:var(--lime-deep);gap:1rem}.approach__plate{flex-direction:column;gap:.3rem;display:flex}.approach__plate strong{font-family:var(--display);letter-spacing:-.02em;font-size:clamp(1.2rem,2vw,1.5rem);font-weight:400;line-height:1.1}.approach__plate em{color:var(--lime);font-style:normal}.approach__plate span{letter-spacing:.13em;text-transform:uppercase;color:#faf8f39e;font-size:.72rem;font-weight:600;line-height:1.4}
.treatments{background:var(--paper)}.treatments__title{margin-top:.5rem}.treatments__title .mask-line:nth-child(2){color:var(--teal)}.treatments__list{border-top:1px solid var(--line)}.treatments__list li a{border-bottom:1px solid var(--line);transition:color .4s var(--ease), padding-left .4s var(--ease);grid-template-columns:auto minmax(0,.9fr) minmax(0,1.1fr) auto auto;align-items:center;gap:.35rem clamp(1rem,2.5vw,2rem);padding-block:clamp(1.15rem,2.2vw,1.7rem);display:grid}.treatments__list li a:hover{color:var(--teal);padding-left:.6rem}.treatments__mark{background:var(--teal-50);width:clamp(50px,5.6vw,66px);height:clamp(50px,5.6vw,66px);color:var(--teal);transition:background .4s var(--ease), color .4s var(--ease);border-radius:50%;place-items:center;display:grid}.treatments__mark .brand-icon{width:62%;height:62%}.treatments__list li a:hover .treatments__mark{background:var(--teal);color:var(--paper)}.treatments__name{font-family:var(--display);letter-spacing:-.02em;font-size:clamp(1.4rem,2.6vw,2.05rem);line-height:1.1}.treatments__copy{color:var(--ink-60);font-size:.95rem;line-height:1.55}.treatments__badge{letter-spacing:.16em;text-transform:uppercase;border:1px solid var(--line);color:var(--ink-40);white-space:nowrap;border-radius:999px;padding:.4em .85em;font-size:.64rem;font-weight:700}.treatments__go{color:var(--teal);transition:transform .4s var(--ease)}.treatments__list li a:hover .treatments__go{transform:translate(5px)}@media (max-width:900px){.treatments__list li a{grid-template-columns:auto 1fr auto}.treatments__copy{grid-area:2/2/auto/-1}.treatments__badge{display:none}}@media (max-width:620px){.treatments__list li a{grid-template-columns:auto 1fr;padding-block:1.1rem}.treatments__go{display:none}.treatments__copy{font-size:.95rem}}
