@charset "UTF-8";
:root{color-scheme:light;--cream:#f7f3e8;--paper:#fffefa;--forest:#29483a;--leaf:#55745a;--rose:#a65362;--ochre:#80520f;--meadow:#e7ecdf;--line:rgba(41,72,58,.24);--serif:Georgia,"Times New Roman",serif;--sans:system-ui,-apple-system,"Segoe UI",sans-serif;--gutter:clamp(1.3rem,6.1vw,6.75rem);--ease:cubic-bezier(.16,1,.3,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:5.5rem}body{margin:0;background:var(--cream);color:var(--forest);font:1rem/1.65 var(--sans)}::selection{color:var(--paper);background:var(--forest)}a{color:inherit;text-underline-offset:.25em;text-decoration-thickness:1px}a:focus-visible,button:focus-visible{outline:3px solid var(--rose);outline-offset:5px}.skip-link{position:absolute;z-index:10;top:.5rem;left:.5rem;padding:.65rem 1rem;background:var(--forest);color:var(--paper);transform:translateY(-160%)}.skip-link:focus{transform:none}
.site-header{position:relative;z-index:4;min-height:6rem;padding:.8rem var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:2rem;background:var(--cream)}.wordmark,.footer-name{display:inline-flex;flex-direction:column;text-decoration:none;line-height:1.15;font:1.2rem var(--serif);letter-spacing:-.025em}.wordmark small,.footer-name small{margin-top:.35rem;font: .75rem/1.3 var(--sans);letter-spacing:.08em}.site-nav{display:flex;align-items:center;gap:clamp(1.5rem,3vw,3.5rem);font-size:.88rem}.site-nav a{text-decoration:none}.site-nav a:hover,.site-nav a:focus-visible{text-decoration:underline;text-underline-offset:.35em}.site-nav a:last-child{padding:.65rem 0 .65rem .7rem;text-decoration:underline;text-underline-offset:.35em}.site-nav a:last-child span{padding-left:.6rem;color:var(--rose)}.menu-toggle{display:none}
.hero{min-height:min(790px,calc(100svh - 6rem));position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr) minmax(310px,.78fr);align-items:center;gap:clamp(2rem,6vw,7rem);padding:clamp(3rem,7vw,6rem) var(--gutter) 6rem;overflow:hidden}.hero__copy{position:relative;z-index:2;max-width:720px}.hero__eyebrow,.hero h1,h2,h3,p,figure{margin-top:0}.hero h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.04em;line-height:1.02}.hero h1{margin-bottom:1.5rem;font-size:clamp(3.7rem,7.6vw,7.15rem);line-height:.98}.hero h1 span{display:block;overflow:hidden;padding-bottom:.07em}.hero h1 span:nth-child(2){padding-bottom:.1em}.hero h1 em,h2 em{color:var(--leaf);font-weight:400}.hero__intro{max-width:39ch;margin-bottom:2rem;font:clamp(1.13rem,1.6vw,1.38rem)/1.55 var(--serif)}.text-link{display:inline-flex;gap:1.2rem;align-items:center;padding-bottom:.4rem;text-decoration:underline;text-underline-offset:.35em;font-size:.88rem;text-decoration:none}.text-link span{color:var(--rose);font-size:1.2rem;transition:transform .35s var(--ease)}.text-link:hover span{transform:translateY(5px)}.garden{width:min(100%,520px);justify-self:end;margin:0;position:relative;transform-origin:50% 65%}.garden::before{position:absolute;content:"";inset:0;pointer-events:none;z-index:1;background:var(--cream);clip-path:polygon(0 98%,100% 98%,100% 100%,0 100%);opacity:.45}.garden img{display:block;width:100%;height:min(70vh,650px);min-height:420px;object-fit:cover;object-position:center 42%;mix-blend-mode:multiply}.garden figcaption{display:flex;justify-content:space-between;gap:1rem;padding:.9rem .1rem;color:var(--forest);font: .85rem var(--serif)}.garden figcaption span:last-child{text-align:right}.scroll-cue{position:absolute;bottom:1.7rem;left:var(--gutter);display:flex;align-items:center;gap:.8rem;color:var(--leaf);font-size:.82rem;text-decoration:none}.scroll-cue__stem{width:2.2rem;height:0;background:transparent;transform-origin:left;animation:stem-grow 1.2s 1.5s var(--ease) both}
.section-pad{padding:clamp(5.5rem,10vw,10rem) var(--gutter)}.section-label__branch{width:2rem;height:0;background:transparent}.intro{background:var(--paper)}.intro__content{display:grid;grid-template-columns:1fr .8fr;gap:8vw;margin:clamp(3rem,6vw,6rem) 5vw 0 12%;align-items:start}.intro h2{margin:0;font-size:clamp(3.1rem,6.5vw,6.5rem)}.intro__text{max-width:52ch;font:1.1rem/1.78 var(--serif)}.intro__text p{margin-bottom:1.35rem}.credential{margin-top:2.6rem;padding-top:1.1rem;color:var(--leaf);font: .86rem/1.65 var(--sans)}
.belief{position:relative;min-height:640px;display:grid;grid-template-columns:1.05fr .75fr;align-items:center;gap:10vw;overflow:hidden;background:var(--meadow);padding-block:clamp(6rem,11vw,11rem)}.belief__heading,.belief__body{position:relative;z-index:1}.belief h2{max-width:13ch;margin:0;font-size:clamp(3.2rem,6.1vw,6.2rem)}.belief h2 em{color:var(--forest)}.belief__body{max-width:40ch;padding-top:4rem;font:1.17rem/1.75 var(--serif)}.belief__note{margin:2.25rem 0 0;color:var(--forest);font:italic 1.04rem/1.6 var(--serif)}.belief__vine{position:absolute;right:4%;bottom:-35%;width:min(34vw,410px);height:auto;overflow:visible;fill:none;stroke:rgba(85,116,90,.36);stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}.belief__vine ellipse{fill:rgba(85,116,90,.12);stroke:rgba(85,116,90,.28)}
.process{display:grid;grid-template-columns:.85fr 1fr;gap:8vw;background:var(--cream)}.process__top{max-width:620px}.process h2{margin:3rem 0 2rem;font-size:clamp(3.1rem,5.8vw,5.8rem)}.process__lead{max-width:38ch;color:var(--leaf);font:1.12rem/1.65 var(--serif)}.process-list{align-self:center;list-style:none;margin:0;padding:0;}.process-list li{display:grid;grid-template-columns:3rem 1fr;gap:1rem;padding:1.65rem .2rem 1.8rem;}.process-list__number{padding-top:.35rem;color:var(--rose);font:1.1rem var(--serif);font-style:italic}.process-list h3{margin:0 0 .35rem;font:1.6rem var(--serif)}.process-list p{max-width:42ch;margin:0;color:var(--forest);font-size:.95rem;line-height:1.65}
.contact{min-height:600px;position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;background:var(--forest);color:var(--cream);padding-block:clamp(6rem,11vw,11rem)}.contact__copy{position:relative;z-index:1}.contact h2{max-width:9ch;margin:0 0 1.6rem;font-size:clamp(3.8rem,7vw,7rem)}.contact h2 em{color:#d6c08a}.contact__copy>p{max-width:40ch;margin-bottom:.35rem;font:1.12rem/1.6 var(--serif)}.contact__copy .contact__note{color:#e0dfc3;font: .88rem/1.6 var(--sans)}.contact__botanical{position:absolute;right:9%;top:4%;width:min(40vw,500px);height:auto;fill:none;stroke:rgba(214,192,138,.56);stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round;transform:rotate(-6deg)}.contact__botanical ellipse{fill:rgba(214,192,138,.16);transform-box:fill-box;transform-origin:50% 100%;animation:leaf-breathe 7s ease-in-out infinite alternate}
.site-footer{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:2rem var(--gutter);background:var(--forest);color:var(--cream);}.site-footer p,.back-top{margin:0;color:#e0dfc3;font-size:.86rem}.back-top{text-underline-offset:.3em}
/* One composed entrance carries the page from the threshold into the story. */
@media(prefers-reduced-motion:no-preference){.hero__eyebrow,.hero__intro,.text-link{animation:arrive .9s 1.05s var(--ease) both}.hero h1 span{animation:unmask .95s var(--ease) both;clip-path:inset(0 0 100% 0)}.hero h1 span:nth-child(2){animation-delay:.14s}.garden{animation:garden-arrive 1.5s .12s var(--ease) both;clip-path:inset(0 0 0 100%)}.garden img{animation:garden-focus 2.2s .2s var(--ease) both}.section-pad:not(.contact) h2,.section-pad:not(.contact) p,.process-list li{transition:transform .8s var(--ease),clip-path .9s var(--ease)}.reveal-ready .section-pad:not(.contact) h2,.reveal-ready .section-pad:not(.contact) p,.reveal-ready .process-list li{clip-path:inset(0 0 100% 0);transform:translateY(18px)}.reveal-ready .section-pad.is-visible h2,.reveal-ready .section-pad.is-visible p,.reveal-ready .section-pad.is-visible .process-list li{clip-path:inset(0);transform:none}.process-list li:nth-child(2){transition-delay:.1s}.process-list li:nth-child(3){transition-delay:.2s}@keyframes unmask{from{clip-path:inset(0 0 100% 0);transform:translateY(12%)}to{clip-path:inset(0);transform:none}}@keyframes arrive{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes garden-arrive{from{clip-path:inset(0 0 0 100%);transform:scale(.98)}to{clip-path:inset(0);transform:none}}@keyframes garden-focus{from{transform:scale(1.11);filter:saturate(.72)}to{transform:scale(1);filter:saturate(1)}}@keyframes stem-grow{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes leaf-breathe{from{transform:rotate(-5deg)}to{transform:rotate(6deg)}}}

@media(max-width:800px){:root{--gutter:1.35rem}.site-header{min-height:5.2rem}.menu-toggle{display:grid;gap:5px;width:2.6rem;height:2.6rem;place-content:center;border:0;background:transparent;color:var(--forest);cursor:pointer}.menu-toggle span{width:1.25rem;height:2px;background:currentColor;transition:transform .25s var(--ease)}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3px) rotate(-45deg)}.site-nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;padding:.4rem var(--gutter) 1rem;background:var(--cream);}.site-nav.is-open{display:flex}.site-nav a{padding:.85rem 0;}.site-nav a:last-child{}.hero{min-height:auto;grid-template-columns:1fr;gap:2.2rem;padding-top:3.7rem;padding-bottom:5rem}.hero h1{font-size:clamp(3.45rem,14vw,6.2rem)}.hero__intro{max-width:36ch}.garden{width:min(91%,520px);justify-self:center}.garden img{height:min(104vw,580px);min-height:360px}.scroll-cue{bottom:1.5rem}.intro__content{grid-template-columns:1fr;gap:2rem;margin:3rem 0 0}.intro h2{font-size:clamp(3.1rem,12vw,5.7rem)}.belief{min-height:auto;grid-template-columns:1fr;gap:1rem}.belief h2{max-width:12ch;font-size:clamp(3.2rem,12vw,5.7rem)}.belief__body{padding:2rem 1rem 0 0}.belief__vine{right:-4%;bottom:-20%;width:54vw}.process{grid-template-columns:1fr;gap:2.5rem}.process h2{margin-top:1.5rem;font-size:clamp(3rem,11vw,5rem)}.contact{min-height:530px}.contact__botanical{right:-13%;top:6%;width:min(66vw,390px);opacity:.8}.site-footer{flex-wrap:wrap}.site-footer p{order:3;flex-basis:100%}}
@media(max-width:380px){.wordmark{font-size:1.08rem}.hero h1{font-size:3.3rem}.garden figcaption{font-size:.78rem}.site-footer{align-items:flex-start}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.hero h1 span,.garden{clip-path:none!important;transform:none!important}.section-pad:not(.contact) h2,.section-pad:not(.contact) p,.process-list li{clip-path:none!important;transform:none!important}}
/* Portrait as a moving chapter: the image follows the reader through the story. */
.portrait-story{width:min(76%,850px);margin:clamp(5rem,10vw,10rem) 0 0 12%;}
.portrait-story__frame{height:clamp(440px,70vw,820px);overflow:hidden;background:var(--meadow);}
.portrait-story__image{display:block;width:100%;height:100%;object-fit:cover;object-position:center 42%;transform:translate3d(0,var(--portrait-shift,0px),0) scale(var(--portrait-scale,1));clip-path:inset(var(--portrait-mask,0%) 0 0);will-change:transform,clip-path;}
.portrait-story figcaption{display:flex;justify-content:space-between;gap:1rem;padding:.9rem .1rem;color:var(--forest);font:.9rem var(--serif);}
.process-list details{min-width:0;}
.process-list summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;list-style:none;cursor:pointer;font:1.6rem/1.3 var(--serif);}
.process-list summary::-webkit-details-marker{display:none;}
.process-list summary:focus-visible{outline:3px solid var(--rose);outline-offset:5px;}
.process-list__mark{width:1.3rem;height:1.3rem;position:relative;flex:none;}
.process-list__mark::before,.process-list__mark::after{position:absolute;content:"";left:0;top:50%;width:100%;height:2px;background:var(--leaf);transition:transform .22s var(--ease);}
.process-list__mark::after{transform:rotate(90deg);}
.process-list details[open] .process-list__mark::after{transform:rotate(0);}
.process-list details p{max-width:42ch;margin:.7rem 0 0;color:var(--forest);font-size:.95rem;line-height:1.65;}
@media(max-width:800px){.portrait-story{width:100%;margin:5rem 0 0;}.portrait-story__frame{height:clamp(430px,125vw,700px);}.portrait-story__image{object-position:center 38%;}.portrait-story figcaption{font-size:.8rem;}}
@media(prefers-reduced-motion:reduce){.portrait-story__image{clip-path:none!important;transform:none!important;will-change:auto;}}
/* Progressive enhancement: the mobile links remain visible until the menu works. */
@media(max-width:800px){
  .menu-toggle{display:none;}
  .site-nav{display:flex;position:static;flex-direction:column;align-items:stretch;gap:0;padding:.4rem var(--gutter) 1rem;}
  .js .menu-toggle{display:grid;}
  .js .site-nav{display:none;position:absolute;top:100%;left:0;right:0;}
  .js .site-nav.is-open{display:flex;}
}

/* Una escena editorial coordina paisaje, retrato y relato sin retener el scroll. */
.story{display:grid;grid-template-columns:minmax(0,.9fr) minmax(320px,.8fr);gap:clamp(3rem,9vw,9rem);align-items:start;margin:clamp(5rem,10vw,9rem) 5vw 0 12%;}
.story__chapters{display:grid;grid-template-rows:repeat(3,minmax(65vh,auto));}
.story__chapter{align-self:center;max-width:36rem;padding:2rem 0;}
.story__kicker{margin-bottom:1rem;color:var(--rose);font-size:.9rem;}
.story__chapter h3{max-width:12ch;margin:0 0 1.4rem;font:400 clamp(2.6rem,5.3vw,5.4rem)/1.02 var(--serif);letter-spacing:-.04em;}
.story__chapter>p:last-child{max-width:34ch;margin:0;color:var(--forest);font:1.12rem/1.7 var(--serif);}
.story__image{position:sticky;top:12vh;align-self:start;height:min(72vh,720px);min-height:420px;margin:10vh 0 0;overflow:hidden;background:var(--meadow);}
.story__image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.story__garden{object-position:center 46%;mix-blend-mode:multiply;}
.story__portrait{object-position:center 38%;}
.story__image figcaption{position:absolute;right:0;bottom:0;left:0;z-index:2;display:flex;justify-content:space-between;gap:1rem;padding:1.2rem;background:var(--paper);color:var(--forest);font:.9rem var(--serif);}
.story__chapter[aria-current="step"] h3{color:var(--leaf);}
@media(max-width:800px){
 .story{grid-template-columns:1fr;gap:1rem;margin:4rem 0 0;}
 .story__image{position:sticky;top:1rem;z-index:2;grid-row:1;height:clamp(220px,34svh,320px);min-height:0;margin:0;}
 .story__chapters{grid-row:2;grid-template-rows:repeat(3,minmax(58vh,auto));}
 .story__chapter{padding:2.2rem 0;}
 .story__chapter h3{font-size:clamp(2.9rem,11vw,4.8rem);}
 .story__image figcaption{font-size:.78rem;}
}
@media(prefers-reduced-motion:reduce){.story__image img{transform:none!important;clip-path:none!important;}}
@media(min-width:801px){.hero h1{font-size:clamp(3.7rem,6.2vw,6.3rem);}}
@font-face{font-family:Lora;src:url("assets/fonts/Lora-Variable.ttf") format("truetype");font-style:normal;font-weight:400 700;font-display:swap}
@font-face{font-family:SourceSans3;src:url("assets/fonts/SourceSans3-Variable.ttf") format("truetype");font-style:normal;font-weight:200 900;font-display:swap}
:root{--serif:Lora,Georgia,"Times New Roman",serif;--sans:SourceSans3,system-ui,-apple-system,"Segoe UI",sans-serif;--ease:cubic-bezier(.22,1,.36,1);scroll-padding-top:6rem}
body{font-size:1.05rem;line-height:1.7}
.site-header{min-height:5.5rem;border-bottom:1px solid rgba(41,72,58,.12)}
.site-nav{font-size:.98rem}
.site-nav .site-nav__contact{padding:.72rem 1rem;border:1px solid var(--forest);border-radius:999px;text-decoration:none;font-weight:600}
.site-nav .site-nav__contact:hover{background:var(--forest);color:var(--cream)}
.site-nav .site-nav__contact span{padding-left:.4rem;color:var(--rose)}
.hero{grid-template-columns:minmax(0,1fr) minmax(340px,.8fr);gap:clamp(2rem,5vw,6rem)}
.hero h1{max-width:10ch;font-size:clamp(3.6rem,6.8vw,6.35rem);letter-spacing:-.035em}
.hero__intro{max-width:37ch}
.hero__actions{display:flex;align-items:center;gap:1.4rem;flex-wrap:wrap}
.button{display:inline-flex;align-items:center;justify-content:center;gap:.8rem;min-height:3.2rem;padding:.72rem 1.25rem;border:1px solid transparent;border-radius:999px;font:600 1rem/1.2 var(--sans);text-decoration:none;transition:background-color .25s var(--ease),color .25s var(--ease),transform .25s var(--ease)}
.button:hover{transform:translateY(-2px)}
.button--primary{background:var(--forest);color:var(--cream)}
.button--primary:hover{background:#1e392d}
.button--primary span,.button--light span{font-size:1.1em}
.hero .text-link{font-size:.95rem}
.garden{width:min(100%,560px);border-radius:46% 46% 2px 2px / 34% 34% 2px 2px;overflow:hidden;background:var(--meadow)}
.garden::before{display:none}
.garden img{height:min(75vh,680px);min-height:440px;mix-blend-mode:normal;object-position:center 58%}
.garden figcaption{position:absolute;right:0;bottom:0;left:0;margin:0;padding:2.4rem 1rem .9rem;background:linear-gradient(transparent,rgba(20,40,30,.7));color:#fff;font-size:.88rem}
.intro__text{max-width:56ch}
.credential{display:inline-block;color:var(--forest);border-top:1px solid var(--rose);padding-top:.9rem;font-weight:600}
.story{gap:clamp(2rem,6vw,6rem)}
.story__garden{mix-blend-mode:normal;transition:opacity .35s linear}
.story__chapter h3{letter-spacing:-.025em}
.process-list details p{max-width:52ch;font-size:1rem}
.contact__copy>p{max-width:44ch}
.button--light{margin:1.4rem 0 .9rem;background:var(--cream);color:var(--forest)}
.button--light:hover{background:#fffefa}
.contact__note{max-width:45ch!important;margin-top:1.2rem!important;color:#e7e3d2!important}
::selection{color:var(--cream);background:var(--rose)}
:focus-visible{scroll-margin-block:6rem}
@media(max-width:800px){
 :root{--gutter:1.25rem}
 .site-header{min-height:4.8rem;gap:1rem;align-items:center;flex-wrap:wrap}
 .js .site-nav{padding:.3rem var(--gutter) 1rem;box-shadow:0 16px 24px rgba(41,72,58,.08)}
 .js .site-nav .site-nav__contact{align-self:flex-start;margin:.6rem 0}
 .hero{gap:1.6rem;padding-top:2.8rem;padding-bottom:5.6rem}
 .hero h1{max-width:9ch;font-size:clamp(3.5rem,13vw,5.6rem)}
 .hero__actions{align-items:flex-start;flex-direction:column;gap:1rem}
 .garden{width:min(100%,520px);border-radius:44% 44% 2px 2px / 30% 30% 2px 2px}
 .garden img{height:clamp(380px,118vw,580px);min-height:0;object-position:center 56%}
 .garden figcaption{font-size:.8rem}
 .story__garden{opacity:.72}
 .contact__copy{max-width:36rem}
 .contact h2{font-size:clamp(3.3rem,11vw,5.3rem)}
}
@media(max-width:380px){.hero h1{font-size:3.25rem}.garden figcaption{gap:.4rem;font-size:.72rem}.button{font-size:.95rem}}
@media(prefers-reduced-motion:reduce){.button:hover{transform:none}}
/* Minimum reading size for labels and captions, including the narrowest phones. */
.wordmark small,.footer-name small,.site-footer p,.back-top,.scroll-cue{font-size:.875rem}
.garden figcaption,.story__image figcaption{font-size:.875rem}
@media(max-width:380px){.garden figcaption,.story__image figcaption{font-size:.875rem}}

@font-face{font-family:"Literata";src:url("assets/fonts/Literata-Latin.woff2") format("woff2");font-style:normal;font-weight:400 900;font-display:swap}
@font-face{font-family:"Public Sans";src:url("assets/fonts/PublicSans-Latin.woff2") format("woff2");font-style:normal;font-weight:100 900;font-display:swap}
:root{--serif:"Literata",Georgia,"Times New Roman",serif;--sans:"Public Sans",system-ui,-apple-system,"Segoe UI",sans-serif}

.hero h1{font-size:clamp(3.45rem,6.3vw,6.1rem)}
.intro h2,.belief h2{font-size:clamp(3rem,5.2vw,4.7rem)}
.process h2{font-size:clamp(2.9rem,4.8vw,4.5rem)}
.contact h2{font-size:clamp(3.5rem,5.8vw,5.8rem)}

.profile-banner{display:grid;grid-template-columns:minmax(8rem,11rem) minmax(0,1fr);align-items:center;gap:clamp(2rem,6vw,5.5rem);padding:clamp(2.75rem,6vw,5rem) var(--gutter);background:var(--meadow)}
.profile-banner__portrait{width:100%;aspect-ratio:1;margin:0;overflow:hidden;border:1px solid var(--line);background:var(--paper)}
.profile-banner__portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 38%}
.profile-banner__copy{max-width:66ch}
.profile-banner h2{margin:0 0 1rem;font:400 clamp(2rem,3vw,2.8rem)/1.15 var(--serif);letter-spacing:-.03em}
.profile-banner__copy p{margin:0 0 .8rem;font-size:1rem;line-height:1.55}
.profile-banner__degree{font-weight:650}
.profile-banner__degree span{display:block;color:var(--leaf);font-weight:400}
.profile-banner__copy p:last-child{margin-bottom:0}

@media(prefers-reduced-motion:no-preference){
  .profile-banner__portrait{clip-path:inset(0 100% 0 0);animation:profile-reveal .95s .18s var(--ease) both}
  .profile-banner__copy{animation:arrive .85s .32s var(--ease) both}
  @keyframes profile-reveal{from{clip-path:inset(0 100% 0 0);transform:translateX(-12px)}to{clip-path:inset(0);transform:none}}
}

@media(max-width:800px){
  .menu-toggle{display:none}
  .js .menu-toggle{display:grid}
  .site-nav{display:flex}
  .js .site-nav{display:none}
  .js .site-nav.is-open{display:flex}
  .hero h1{font-size:clamp(3.35rem,11.5vw,5.4rem)}
  .intro h2,.belief h2{font-size:clamp(2.8rem,9.5vw,4.3rem)}
  .process h2{font-size:clamp(2.75rem,9vw,4.1rem)}
  .contact h2{font-size:clamp(3.2rem,10vw,5.2rem)}
  .profile-banner{grid-template-columns:6.5rem minmax(0,1fr);gap:1.35rem;padding-block:2.4rem}
  .profile-banner h2{font-size:clamp(1.7rem,6vw,2.35rem)}
  .profile-banner__copy p{font-size:.95rem}
}
@media(max-width:380px){.profile-banner{grid-template-columns:5.25rem minmax(0,1fr);gap:1rem;padding-inline:1.1rem}.profile-banner__copy p{font-size:.91rem}}
