@charset "UTF-8";

.profile-page{overflow:hidden;background:var(--white)}
.profile-hero{position:relative;display:flex;align-items:center;min-height:530px;padding:170px 0 100px;background:var(--cream)}
.profile-hero:after{content:"";position:absolute;right:-11vw;bottom:-26vw;width:55vw;height:55vw;border:1px solid rgba(49,95,82,.08);border-radius:50%}
.profile-hero-inner{position:relative;z-index:1}
.profile-hero h1{margin:0;font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(42px,6vw,66px);font-weight:600;line-height:1.4;letter-spacing:.08em}
.profile-hero-lead{margin:30px 0 0;color:var(--green);font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(20px,2.5vw,29px);line-height:1.8;letter-spacing:.06em}
.profile-section{padding:120px 0}
.profile-section-heading h2,.profile-reading>h2{margin:0;font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(30px,4vw,44px);font-weight:600;line-height:1.55;letter-spacing:.06em}
.profile-split{display:grid;grid-template-columns:.72fr 1.28fr;gap:100px}
.profile-reading{max-width:850px}
.profile-reading>.section-kicker{margin-bottom:14px}
.profile-reading>h2{margin-bottom:52px}
.profile-prose{font-size:16px;line-height:2.2}
.profile-prose p{margin:0 0 28px}
.profile-prose p:last-child{margin-bottom:0}
.profile-introduction{background:var(--white)}
.profile-introduction .profile-section-heading h2{color:var(--green-dark);font-size:clamp(35px,4vw,48px)}
.profile-introduction .profile-prose{padding-left:42px;border-left:1px solid var(--beige)}
.profile-reason{background:var(--cream)}
.profile-support{background:var(--white)}
.profile-family{background:var(--green-dark);color:var(--white)}
.profile-family .section-kicker{color:#b7cabe}
.profile-family .profile-prose{color:#d8e2dd}
.profile-future{background:var(--cream)}
.profile-quote{margin:46px 0;padding:24px 0 24px 28px;border-left:3px solid var(--sand);color:var(--green);font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(24px,3.5vw,34px);font-weight:500;line-height:1.7;letter-spacing:.06em}
.short-lines{color:var(--green-dark);font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:19px;line-height:2.15}
.connection-lines{margin:44px 0;padding:30px 34px;border-left:2px solid var(--sand);background:var(--cream)}
.connection-lines p{margin:0 0 9px;color:var(--green-dark);font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:18px}
.connection-lines p:last-child{margin-bottom:0}
.profile-brand-line{position:relative;margin:44px 0!important;padding-left:22px;color:#f0e7d9;font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(28px,4vw,39px);font-weight:500;letter-spacing:.1em}
.profile-brand-line:before{content:"";position:absolute;top:.4em;bottom:.4em;left:0;width:2px;background:var(--sand)}
.profile-future-message{margin:0 0 56px;padding:36px 40px;border-left:3px solid var(--sand);background:var(--white);color:var(--green);font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(25px,3.5vw,36px);font-weight:500;line-height:1.7;letter-spacing:.05em}
.profile-secondary-message{margin:38px 0!important;color:var(--green);font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(21px,3vw,29px);font-weight:500;line-height:1.8}
.profile-closing{padding:145px 0;background:var(--white);text-align:center}
.profile-closing-inner{max-width:850px}
.closing-purpose{margin:0;color:var(--green-dark);font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(22px,3vw,30px);line-height:2;letter-spacing:.08em}
.profile-closing h2{position:relative;margin:80px 0 70px;color:var(--green);font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(38px,6vw,60px);font-weight:500;line-height:1.5;letter-spacing:.09em}
.profile-closing h2:before{content:"";position:absolute;top:-38px;left:50%;width:42px;height:1px;background:var(--sand);transform:translateX(-50%)}
.closing-copy{color:var(--muted);font-size:16px;line-height:2.2;text-align:left}
.closing-copy p{margin:0 0 24px}
.profile-signature{margin:64px 0 0;color:var(--green-dark);font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:18px;line-height:1.8;text-align:right}
.profile-signature span{display:block;color:var(--green);font-family:Georgia,serif;font-size:23px;letter-spacing:.16em}
.reveal-section.is-reveal-pending{opacity:0;transform:translateY(8px)}
.reveal-section.is-revealed{animation:profile-section-in 1s cubic-bezier(.22,.61,.36,1) both}
@keyframes profile-section-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}

@media(max-width:980px){.profile-split{gap:55px}.profile-section{padding:100px 0}}
@media(max-width:760px){.profile-hero{min-height:430px;padding:135px 0 75px}.profile-hero h1{font-size:40px}.profile-hero-lead{margin-top:22px;font-size:20px}.profile-section{padding:80px 0}.profile-split{grid-template-columns:1fr;gap:35px}.profile-introduction .profile-prose{padding:28px 0 0;border-top:1px solid var(--beige);border-left:0}.profile-reading>h2{margin-bottom:38px}.profile-prose{font-size:15px;line-height:2.1}.profile-quote{margin:36px 0;padding:18px 0 18px 20px}.connection-lines{margin:34px 0;padding:24px 22px}.connection-lines p{font-size:16px}.profile-future-message{margin-bottom:42px;padding:28px 24px}.profile-closing{padding:100px 0}.profile-closing h2{margin:70px 0 55px}.profile-signature{margin-top:48px}}
@media(max-width:390px){.profile-hero h1{font-size:35px}.profile-hero-lead{font-size:18px}.profile-section-heading h2,.profile-reading>h2{font-size:28px}.profile-future-message{font-size:23px}.profile-closing h2{font-size:34px}}
@media(prefers-reduced-motion:reduce){.reveal-section.is-reveal-pending{opacity:1;transform:none}.reveal-section.is-revealed{animation:none!important}}
