/* Editorial identity: warm ivory, plum and brushed gold. */
:root{--ink:#482b36;--text:#4d4147;--muted:#7b6e74;--paper:#fcfaf7;--cream:#f1eae5;--line:#dfd4d4;--sage:#eee2dc}
body{background:var(--paper)}
.header{position:sticky;top:0;z-index:30;background:#fcfaf7f5;backdrop-filter:blur(18px);max-width:none;height:82px;padding-inline:max(32px,calc((100vw - 1240px)/2));border-bottom:1px solid #e8ded9}
.wordmark .monogram{font-size:39px;color:#663d4d}.nav-contact{border:1px solid #d8c9cc;border-radius:30px;padding:8px 18px}.nav-contact:hover{background:#eee3e5}nav a:hover{color:#9c6e45}
.hero.wrap{width:100%;max-width:none;padding:72px max(50px,calc((100vw - 1184px)/2)) 80px;background:#482b36;position:relative;isolation:isolate;gap:72px;grid-template-columns:1.1fr 1fr;overflow:hidden}
.hero:before{content:"";position:absolute;width:800px;height:800px;border:1px solid #d0ad7921;border-radius:50%;left:-540px;top:60px;z-index:-1}.hero:after{content:"";position:absolute;width:550px;height:550px;border:1px solid #d0ad792e;border-radius:50%;right:-250px;top:-290px;z-index:-1}
.hero-copy{position:relative}.hero .eyebrow{color:#d8b98e;font-size:10px;letter-spacing:.18em}.dot{background:#dfb785}.hero h1{color:#fff6ed;font-size:clamp(80px,7.9vw,116px);line-height:.98;margin:34px 0 26px;letter-spacing:-.05em}.hero h1 em{color:#d7b88c}.hero-role{color:#fff4ee;font-size:14px;font-weight:500}.hero-intro{color:#decfd3;font-size:15px;line-height:1.85;max-width:400px}.hero-actions{margin-top:27px;gap:24px}.hero .button{background:#e3c79f;color:#38232c;border-color:#e3c79f;border-radius:6px;font-size:12px;font-weight:600;min-height:52px}.hero .button:hover{background:#f1d9b7;transform:translateY(-2px)}.hero .text-link{color:#fff4eb;border-color:#997c83;min-height:44px}.hero-location{color:#d2bdc6;margin-top:24px}.location-rule{background:#826773}.hero-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:29px}.hero-tags span{border:1px solid #967884;color:#e6d7db;border-radius:50px;padding:5px 11px;font-size:9px;letter-spacing:.03em}
.hero-image{aspect-ratio:4/5.15;border-radius:220px 220px 10px 10px;border:7px solid #6c4c57;outline:1px solid #b89a745e;outline-offset:12px;box-shadow:0 30px 70px #160a102b}.hero-image img{object-position:51% 23%;height:100%;width:100%;object-fit:cover}.hero-image figcaption{bottom:0;left:0;right:0;padding:21px 24px;background:#f8f0e6f5;gap:10px}.hero-image figcaption>span:first-child{font-size:12px}.image-mark{font-style:normal;letter-spacing:-.07em;font-size:36px;color:#704753}
.intro-strip{background:#f1eae5;border:0}.strip-content{display:grid;grid-template-columns:1fr 1fr 1fr;padding-block:31px;gap:40px}.strip-content>div{display:flex;flex-direction:column;border-right:1px solid #d8cac9;padding-right:20px}.strip-content>div:last-child{border:0}.strip-content strong{font-family:var(--serif);font-size:25px;line-height:1.3;font-weight:400;color:var(--ink);margin:6px 0}.strip-content>div>span{display:block;font-size:10px;color:#7a696e}.strip-content>div>.proof-kicker{font-size:8px;letter-spacing:.15em;color:#98794e}
.section{padding-block:96px}.section-label .number{background:#ece0e0;width:35px;height:35px;display:grid;place-items:center;border-radius:50%;color:#845a66}.section-label .eyebrow{padding-top:7px}.profile-body h2{font-size:49px;letter-spacing:-.055em}.profile-body h2 em{color:#a17460}.profile-notes{border:0;gap:14px}.profile-notes>div{background:#f2eae7;padding:20px;border-radius:8px;border-left:2px solid #c09a6b}.profile-notes strong{font-size:12px}.profile-body .large-copy{font-size:22px}
.experience-section{background:#f7f2f0}.section-top h2{font-size:47px}.timeline{border-top:0}.job{background:#fffcf9;border:1px solid #eadfdf;border-radius:12px;padding:30px;margin-top:16px;grid-template-columns:160px 1fr 30px;gap:29px;position:relative;transition:box-shadow .25s,transform .25s}.job:first-child{border-left:4px solid #a77956}.job:hover{box-shadow:0 14px 35px #482b360a;transform:translateY(-2px)}.job h3{font-size:28px}.job-date{color:#6c515c}.job-index{color:#c4a68d;font-size:28px}.job ul{color:#74666d}.job li::marker{color:#a77956}.company{color:#946857}.inline-link{border-color:#d7beb0;color:#845845}
.skills-section{background:#482b36;position:relative;overflow:hidden}.skills-section .eyebrow{color:#d7ba92}.skills-section h2{color:#fff6ed}.skills-section h2 em{color:#d7b88c}.skills-heading>p{color:#dac9d0}.skills-grid{gap:20px;margin-top:44px}.skill{border:1px solid #81616d;border-radius:12px;padding:25px 22px;background:#ffffff04}.skill-num{color:#d5b48c;font-size:22px}.skill h3{color:#fff1e8;font-size:17px}.skill p{color:#ddcfd5;font-size:12px}.ai-skill{background:#f3e8dc;color:#482b36;border-color:#f3e8dc}.ai-skill h3{color:#482b36}.ai-skill p{color:#735f66}.ai-skill .skill-num{color:#996d43}.skill-tag{border-color:#c3a682;color:#775539;border-radius:20px;padding:5px 10px}.skills-section .number{color:#caa47b}
.education-list article{border-color:#dfd2d2}.grade{background:#eee0d5;border-radius:4px;color:#754c36}.languages{background:#f0e7e6;border-radius:13px;border-top:3px solid #ba926a;padding:33px}.education-list h3{font-size:29px}.languages dl div{padding:17px 0}.documents-section{background:#f1eae5}.cv-download{border-radius:12px;background:#482b36;padding:29px 33px}.cv-download:hover{background:#633e4b}.cv-download small{color:#dac8ce}.file-icon{border-color:#bd987a;border-radius:4px;color:#e2c196}.document-list a{border-color:#d9c9c8}.document-list a small{color:#806f76}.document-list a:hover{color:#9c6c48}.contact-section h2 em{color:#a17460}.contact-details>a:hover{color:#9c6c48}.contact-details>a,.contact-details>div{padding:20px 0}.footer{padding-block:28px}.footer .monogram{font-size:39px}
@media(min-width:1600px){.hero.wrap{padding-block:85px}.hero-image{max-height:650px}}
@media(max-width:1100px){.hero.wrap{padding:60px 40px;gap:40px}.hero h1{font-size:85px}.hero .eyebrow{font-size:9px;letter-spacing:.1em}.hero-role{font-size:12px}.hero-image{aspect-ratio:4/5.5}.hero-actions{gap:15px}.strip-content{gap:25px}.strip-content strong{font-size:22px}.job{grid-template-columns:145px 1fr 25px;gap:20px}.skills-grid{grid-template-columns:1fr 1fr}.profile-body h2{font-size:43px}}
@media(max-width:760px){html{scroll-padding-top:88px}.header{height:68px;padding-inline:20px}.header nav{top:68px;background:#fcfaf7;border-radius:0 0 16px 16px;padding-bottom:17px}.nav-contact{margin-top:8px}.header .menu-toggle{min-width:66px;min-height:44px}.hero.wrap{padding:36px 24px 44px;gap:38px;grid-template-columns:1fr}.hero .eyebrow{font-size:8px;letter-spacing:.12em}.hero h1{font-size:clamp(65px,18vw,90px);margin:25px 0 22px}.hero-role{font-size:12px;line-height:1.5}.hero-intro{font-size:14px;line-height:1.8;margin-top:15px;max-width:500px}.hero-actions{gap:18px;margin-top:23px}.hero .button{padding-inline:15px;gap:17px;font-size:11px}.hero .text-link{font-size:11px;gap:8px}.hero-tags{margin-top:20px;gap:6px}.hero-tags span{font-size:8px;padding:5px 9px}.hero-location{font-size:9px;margin-top:17px;gap:8px}.hero-image{width:calc(100% - 18px);max-width:410px;aspect-ratio:4/4.6;border:5px solid #6c4c57;border-radius:180px 180px 8px 8px;outline-offset:8px}.hero-image figcaption{padding:16px 20px}.hero-image figcaption>span:first-child{font-size:11px}.image-mark{font-size:31px}.strip-content{grid-template-columns:1fr;padding-block:25px;gap:19px;text-align:left}.strip-content>div{border-right:0;border-bottom:1px solid #d8cac9;padding:0 0 18px 14px;border-left:2px solid #b79066}.strip-content>div:last-child{padding-bottom:0;border-left:2px solid #b79066}.strip-content strong{font-size:24px;margin:4px 0}.strip-content>div>span{font-size:10px}.section{padding-block:60px}.profile-body h2,.section-top h2{font-size:34px}.profile-body .large-copy{font-size:19px}.section-label{align-items:center}.section-label .eyebrow{padding:0}.profile-notes{grid-template-columns:1fr 1fr;gap:10px}.profile-notes>div{padding:16px 12px}.small-label{font-size:8px}.profile-notes strong{font-size:11px;line-height:1.6;display:block}.section-top{margin-bottom:26px}.job{padding:23px 19px;grid-template-columns:1fr 25px;gap:8px 12px;border-radius:11px}.job-date{font-size:10px}.job h3{font-size:24px}.job .company{font-size:9px;line-height:1.6}.job-index{font-size:22px}.job ul{font-size:12px;line-height:1.85}.job li{padding-left:1px}.job-main{min-width:0}.skills-grid{grid-template-columns:1fr;gap:14px;margin-top:30px}.skill{padding:23px 20px;column-gap:14px;grid-template-columns:25px 1fr}.skill h3{font-size:18px}.skill p{font-size:13px}.skills-heading h2{font-size:36px}.education-list h3{font-size:26px}.languages{padding:26px}.cv-download{padding:22px 19px}.cv-download strong{font-size:25px}.document-list a{min-height:83px;line-height:1.5}.contact-section h2{font-size:32px}.contact-details>a,.contact-details>div{font-size:14px}.footer{font-size:9px}.footer .monogram{font-size:33px}}
@media(max-width:360px){.hero.wrap{padding-inline:20px}.hero-actions{gap:12px}.hero .button{font-size:10px;padding-inline:12px;gap:12px}.hero .text-link{font-size:10px}.hero-tags span{font-size:7.5px}.hero-location{font-size:8px}.hero-role{font-size:11px}.profile-notes{grid-template-columns:1fr}.contact-details>a{font-size:12px}.footer>a{margin-left:48px}.skills-heading h2{font-size:31px}}
@media(prefers-reduced-motion:reduce){.job:hover,.hero .button:hover{transform:none}}
@media print{.header{display:none}.hero.wrap{background:white;padding:10px 0;color:#482b36}.hero h1,.hero-role,.hero-intro,.hero-location,.hero .eyebrow{color:#482b36}.hero-image{border-radius:0;outline:0;box-shadow:none}.hero-tags,.intro-strip{display:none}.job{border:0;padding:20px 0}.skills-section{background:white}.skill,.ai-skill{background:white;border-color:#ddd}.skill h3,.skill p{color:#482b36}}

.motivation-section{background:#eee3dc;border-top:1px solid #e3d3cb;border-bottom:1px solid #e3d3cb}.motivation-layout{display:grid;grid-template-columns:1fr 1.05fr;gap:70px;margin-top:31px}.motivation-intro h2{font-size:43px;line-height:1.19;letter-spacing:-.045em}.motivation-intro h2 em{color:#9b7057}.motivation-statement{font-size:19px;line-height:1.65;margin-top:29px;max-width:440px;color:#604550}.motivation-values{display:flex;flex-wrap:wrap;gap:10px;margin-top:29px}.motivation-values span{font-size:10px;letter-spacing:.04em;border:1px solid #bca194;border-radius:30px;padding:7px 13px;color:#775444}.motivation-copy{border-left:1px solid #ceb7ae;padding-left:37px}.motivation-copy p{font-size:14px;line-height:1.9;margin-top:20px;color:#6b5861}.motivation-copy p:first-child{margin-top:0}.motivation-copy .inline-link{font-size:11px;line-height:1.7;padding-bottom:6px}.header nav{gap:23px}
@media(max-width:1100px){.motivation-layout{gap:38px}.motivation-intro h2{font-size:36px}.motivation-copy{padding-left:27px}.header nav{gap:16px}}
@media(max-width:850px) and (min-width:761px){.wordmark>span:last-child{display:none}}
@media(max-width:760px){.motivation-layout{grid-template-columns:1fr;gap:30px;margin-top:25px}.motivation-intro h2{font-size:32px}.motivation-statement{font-size:17px;margin-top:22px}.motivation-values{margin-top:21px;gap:7px}.motivation-values span{font-size:9px;padding:6px 10px}.motivation-copy{padding:25px 0 0;border-left:0;border-top:1px solid #ceb7ae}.motivation-copy p{font-size:14px;line-height:1.85}.header nav{gap:3px}.motivation-section .eyebrow{font-size:9px;letter-spacing:.11em}}
@media print{.motivation-section{background:white}.motivation-layout{gap:30px}.motivation-intro h2{font-size:26px}.motivation-copy p{font-size:11px}.motivation-values{display:none}}

/* Unified competence cards and an accessible reading layout for the personal statement. */
.ai-skill{background:#ffffff04;color:#e4e9df;border-color:#81616d}.ai-skill h3{color:#fff1e8}.ai-skill p{color:#ddcfd5}.ai-skill .skill-num{color:#d5b48c}.ai-skill .skill-tag{border-color:#b99a77;color:#e2c196}
.personal-motivation .motivation-layout{display:block;max-width:900px;margin:32px auto 0}.personal-motivation .eyebrow{max-width:900px;margin-inline:auto}.personal-motivation .motivation-intro h2{font-size:46px;line-height:1.22}.personal-motivation .motivation-copy{max-width:790px;margin:38px 0 0 auto;padding:0 0 0 32px;border-left:2px solid #bc9670;border-top:0}.personal-motivation .motivation-copy p{font-size:16px;line-height:1.9;margin-top:24px}.personal-motivation .motivation-copy p:first-child{margin-top:0}.personal-motivation strong{color:#482b36;font-weight:600}.personal-motivation .motivation-copy .motivation-highlight{font-size:23px;line-height:1.55;background:#e4d4cc;padding:24px 26px;border-radius:8px;margin-block:32px}.personal-motivation .motivation-highlight strong{display:block;margin-bottom:7px}.personal-motivation .motivation-closing{font-family:Georgia,serif;font-style:italic;color:#8b634c}
@media(max-width:760px){.personal-motivation .motivation-layout{margin-top:25px}.personal-motivation .motivation-intro h2{font-size:32px;line-height:1.24}.personal-motivation .motivation-copy{padding:25px 0 0;margin-top:28px;border-left:0;border-top:1px solid #ceb7ae}.personal-motivation .motivation-copy p{font-size:15px;line-height:1.85;margin-top:23px}.personal-motivation .motivation-copy .motivation-highlight{font-size:20px;line-height:1.6;padding:22px 20px;margin-block:27px}}
@media print{.personal-motivation .motivation-intro h2{font-size:28px}.personal-motivation .motivation-copy p{font-size:11px}.ai-skill{background:white}.ai-skill h3,.ai-skill p{color:#482b36}}

/* Scroll-led transitions inspired by Jesse's pinned introduction. */
.hero-message,.scroll-cue{display:none}
@media screen and (prefers-reduced-motion:no-preference){
  .motion-ready .hero-stage{height:240svh;position:relative;background:#482b36}
  .motion-ready .hero.wrap{position:sticky;top:82px;min-height:calc(100svh - 82px);height:calc(100svh - 82px);padding-block:40px;align-items:center;overflow:hidden;background:#fcfaf7;color:#482b36}
  .motion-ready .hero:before{inset:0;width:auto;height:auto;border:0;border-radius:0;background:radial-gradient(ellipse at 78% 50%,#754a5b,#482b36 72%);clip-path:inset(0 calc((1 - var(--hero-progress,0))*2%) 0 calc((1 - var(--hero-progress,0))*100%) round calc((1 - var(--hero-progress,0))*90px));z-index:-1}
  .motion-ready .hero:after{display:none}
  .motion-ready .hero-copy{opacity:var(--hero-copy-opacity,1);transform:translateY(calc(var(--hero-progress,0)*-65px));z-index:1}
  .motion-ready .hero h1{color:#482b36;font-size:clamp(65px,7.6vw,108px);margin-top:20px}.motion-ready .hero h1 em{color:#986e52}
  .motion-ready .hero .eyebrow,.motion-ready .hero-role,.motion-ready .hero-intro,.motion-ready .hero-location,.motion-ready .hero .text-link{color:#604550}
  .motion-ready .hero-tags span{color:#604550;border-color:#c8b1b8}
  .motion-ready .hero-image{height:min(65svh,620px);width:100%;max-width:440px;justify-self:end;aspect-ratio:auto;transform:scale(calc(1 + var(--hero-progress,0)*.035));border-radius:calc(220px - var(--hero-progress,0)*190px) calc(220px - var(--hero-progress,0)*190px) 12px 12px;z-index:2}
  .motion-ready .hero-message{display:block;position:absolute;left:max(50px,calc((100vw - 1184px)/2));top:50%;width:42%;transform:translateY(calc(-50% + (1 - var(--hero-message-progress,0))*35px));opacity:var(--hero-message-progress,0);visibility:hidden;color:#fff4eb;z-index:3}
  .motion-ready .hero-message.is-visible{visibility:visible}
  .motion-ready .hero-message .eyebrow{color:#d7b88c}.hero-message>p{font:clamp(46px,5.4vw,78px)/1.15 var(--serif);letter-spacing:-.04em;margin:22px 0 30px}.hero-message em{color:#d7b88c}.hero-message>a{color:#fff4eb;font-size:13px;border-bottom:1px solid #967884;padding-bottom:8px}
  .motion-ready .scroll-cue{display:flex;position:absolute;bottom:18px;left:50%;transform:translateX(-50%);align-items:center;gap:14px;letter-spacing:.18em;font-size:8px;color:#98794e}.scroll-cue span{font-size:18px}
  .reveal-pending{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0ms)}
  .reveal-pending.is-revealed,.reveal-pending:focus-within{opacity:1;transform:none}
  .motion-ready .skills-grid{display:flex;overflow-x:auto;gap:22px;scroll-snap-type:x mandatory;scroll-padding:2px;padding:12px 2px 24px;scrollbar-color:#bfa07b #62404e;scrollbar-width:thin}
  .motion-ready .skill{flex:0 0 min(76vw,430px);scroll-snap-align:start;min-height:280px;transition:background .3s,border-color .3s,transform .3s}
  .motion-ready .skill:hover{background:#ffffff0b;border-color:#d5b48c;transform:translateY(-5px)}
  .skills-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:22px;color:#ddcfd5;font-size:12px}.skills-controls>div{display:flex;gap:8px}.skills-controls button{width:44px;height:44px;border:1px solid #967884;border-radius:50%;background:transparent;color:#fff4eb;font-size:21px;cursor:pointer}.skills-controls button:hover{background:#ffffff12}.skills-controls button:disabled{opacity:.3;cursor:default}
  @media(max-width:760px){
    .motion-ready .hero-stage{height:225svh}
    .motion-ready .hero.wrap{top:68px;height:calc(100svh - 68px);min-height:650px;padding:24px 25px 48px;display:flex;flex-direction:column;gap:18px;justify-content:flex-start}
    .motion-ready .hero-copy{width:100%}.motion-ready .hero h1{font-size:58px;margin:13px 0 12px}.motion-ready .hero-intro{font-size:12px;line-height:1.6;max-width:100%}.motion-ready .hero-role{font-size:12px}.motion-ready .hero-actions{margin-top:15px}.motion-ready .hero-tags,.motion-ready .hero-location{display:none}
    .motion-ready .hero-image{height:240px;min-height:180px;width:190px;margin:0;align-self:center;border-width:4px;outline-offset:5px;flex-shrink:1}.motion-ready .hero-image figcaption{padding:10px;font-size:9px}.motion-ready .hero-image figcaption>span:first-child{font-size:9px}.motion-ready .image-mark{font-size:25px}
    .motion-ready .hero-message{left:25px;top:22px;width:calc(100% - 50px);transform:translateY(calc((1 - var(--hero-message-progress,0))*25px))}.hero-message>p{font-size:45px;line-height:1.1;margin:18px 0}.motion-ready .hero-message .eyebrow{font-size:9px}.hero-message>a{font-size:11px}
    .motion-ready .skill{min-height:280px;flex-basis:82vw}.skills-controls{font-size:11px}
  }
  @media(max-height:700px) and (min-width:761px){.motion-ready .hero h1{font-size:64px;margin:12px 0}.motion-ready .hero-tags,.motion-ready .hero-location{display:none}.motion-ready .hero.wrap{padding-block:20px}}
}
@media(prefers-reduced-motion:reduce),print{.skills-controls{display:none}.hero-message,.scroll-cue{display:none}.reveal-pending{opacity:1;transform:none}}
/* Private contact details are replaced by a confidential enquiry form. */
.contact-section{align-items:start;gap:70px}.contact-form{min-width:0;display:grid;gap:20px}.contact-form fieldset{border:0;padding:0;margin:0}.contact-form legend,.contact-form>label,.form-row>label{font-size:12px;color:#604550;font-weight:600}.contact-form legend{margin-bottom:12px}.topic-options{display:flex;flex-wrap:wrap;gap:8px}.topic-options label{position:relative;cursor:pointer}.topic-options input{position:absolute;opacity:0;width:1px;height:1px}.topic-options span{display:block;padding:10px 14px;border:1px solid #d8c9cc;border-radius:28px;font-size:11px}.topic-options input:checked+span{background:#482b36;border-color:#482b36;color:#fff4eb}.topic-options input:focus-visible+span{outline:3px solid #b28c61;outline-offset:3px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.contact-form input:not([type=radio]),.contact-form textarea{display:block;width:100%;margin-top:8px;background:#fffdfb;border:1px solid #d8c9cc;border-radius:8px;padding:13px 14px;font:14px/1.5 var(--sans,Arial,sans-serif);color:#482b36}.contact-form textarea{resize:vertical;min-height:140px}.contact-form input:focus,.contact-form textarea:focus{outline:2px solid #b28c61;outline-offset:2px}.contact-form .optional{font-weight:400;color:#7b6e74}.contact-note,.contact-form .form-privacy{font-size:12px;line-height:1.75;color:#7b6e74}.form-privacy a{color:#604550;text-decoration:underline}.contact-submit{justify-self:start;background:#482b36;color:#fff4eb;border-radius:30px;border:0;cursor:pointer;padding:14px 24px}.contact-submit:disabled{opacity:.6;cursor:wait}#contact-status{margin:0;font-size:13px;line-height:1.65}#contact-status[data-state=error]{color:#a12e38}#contact-status[data-state=success]{color:#356245}.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.contact-section .contact-note{margin-top:28px}.privacy-page{max-width:820px;margin:auto;padding:70px 25px}.privacy-page h1{font:42px/1.2 Georgia,serif;color:#482b36}.privacy-page h2{font-size:22px;margin-top:35px}.privacy-page p{line-height:1.85}.privacy-page a{text-decoration:underline}.inbox-list article{border:1px solid #d8c9cc;border-radius:12px;padding:24px;margin-block:20px;overflow-wrap:anywhere}.inbox-message{white-space:pre-wrap}.inbox-list time{font-size:12px;color:#7b6e74}
@media(max-width:760px){.contact-section{gap:35px}.form-row{grid-template-columns:1fr}.contact-form input:not([type=radio]),.contact-form textarea{font-size:16px}.contact-section .contact-note{margin-top:18px}}

/* Compact CV: short editorial rows */
.job-summary{max-width:46rem;line-height:1.65;margin-top:1rem}.personal-motivation .motivation-copy p{margin-bottom:1.4rem}

/* Vertical journey: open typography and a scroll-progress rail. */
.journey-section{background:#f6f2f3}
.journey-section .section-top{margin-bottom:72px}
.journey-section .section-top h2{font-family:var(--sans);font-size:clamp(48px,6.6vw,88px);font-weight:700;line-height:1.05;letter-spacing:-.055em;max-width:850px;margin-top:25px}
.journey-section .eyebrow{color:#805166}
.journey-timeline{position:relative;max-width:940px;--track-height:calc(100% - 150px);--track-progress:0px}
.journey-timeline::before,.journey-timeline::after{content:"";position:absolute;left:7px;top:12px;width:2px;height:var(--track-height);background:#ded5da;pointer-events:none}
.journey-timeline::after{height:var(--track-progress);background:#805166}
.journey-timeline .job,.journey-timeline .job:first-child{display:block;position:relative;margin:0;padding:0 0 65px 52px;border:0;border-radius:0;background:transparent;box-shadow:none;transform:none;transition:none}
.journey-timeline .job:last-child{padding-bottom:0}
.journey-timeline .job::before{content:"";position:absolute;left:0;top:5px;width:16px;height:16px;border:4px solid #f6f2f3;border-radius:50%;box-sizing:border-box;background:#b9a4ae;z-index:1;box-shadow:0 0 0 2px #f6f2f3}
.journey-timeline .job.is-current::before{background:#805166}
.journey-timeline .job-date{display:block;font-size:17px;color:#81747b;padding:0;margin-bottom:10px;line-height:1.5}
.journey-timeline .job h3{font-family:var(--sans);font-size:clamp(24px,2.5vw,34px);font-weight:700;line-height:1.35;letter-spacing:-.035em;color:#482b36}
.journey-timeline .job h3 span{font-weight:400;color:#81747b}
.journey-timeline .job-summary{font-size:19px;line-height:1.65;color:#81747b;margin-top:12px;max-width:760px}
@media(max-width:760px){.journey-section .section-top{margin-bottom:54px}.journey-section .section-top h2{font-size:clamp(44px,11.8vw,64px)}.journey-timeline .job,.journey-timeline .job:first-child{padding-left:32px;padding-bottom:48px}.journey-timeline .job-date{font-size:14px;margin-bottom:8px}.journey-timeline .job h3{font-size:22px;line-height:1.4}.journey-timeline .job-summary{font-size:16px;line-height:1.65;margin-top:10px}}
@media(prefers-reduced-motion:reduce),print{.journey-timeline::after{height:var(--track-height)}.journey-timeline .job::before{background:#805166}}

/* Personal introduction: portrait video with deliberate playback. */
.profile-video{margin:40px auto 0;max-width:420px;width:100%}.profile-video video{display:block;width:100%;height:auto;aspect-ratio:512/910;object-fit:contain;background:#282025;border:3px solid #682b42;border-radius:18px;box-shadow:0 12px 34px #482b3612}.profile-video figcaption{display:flex;justify-content:space-between;gap:16px;margin-top:12px;font-size:14px;color:#75656e}.profile-video figcaption span{white-space:nowrap}@media(max-width:600px){.profile-video{max-width:100%;margin-top:30px}}

/* Private mail connection */
.mail-button{display:inline-block;background:#482b36;color:#fff4eb;border:1px solid #482b36;border-radius:28px;padding:14px 24px;font:inherit;font-size:16px;line-height:1.5;text-decoration:none!important;cursor:pointer;max-width:100%;text-align:center}.mail-button:focus-visible{outline:3px solid #b28c61;outline-offset:4px}.mail-secondary{background:transparent;color:#482b36}.privacy-page form{margin-block:24px}.mail-status{display:inline-block;background:#eee5e7;border-radius:20px;padding:5px 15px;font-size:14px;font-weight:600}.mail-notice{padding:16px 20px;border-left:3px solid #79525f;background:#f2ebed;overflow-wrap:anywhere}.mail-small{font-size:13px;color:#71656a}.mail-steps{padding-left:23px;line-height:1.8}.mail-steps li{padding-bottom:12px}.privacy-page strong{overflow-wrap:anywhere}@media(max-width:480px){.privacy-page{padding:40px 22px}.privacy-page h1{font-size:35px}.mail-button{width:100%;box-sizing:border-box}}
