@charset "UTF-8";
:root{--ink:#302938;--paper:#fff;--accent:#7d416e;--accent-light:#dfb5d3;--accent-soft:#f5edf3;--muted:#c2b6c5;--line:#e6dbe3;--text:#665d69;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif;font-family:var(--sans);color:var(--ink);background:var(--paper);font-size:16px;scroll-behavior:smooth;scroll-padding-top:90px}
*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit}p{line-height:1.65;margin:0 0 1.2rem}h1,h2,h3{font-weight:400;margin:0}h2{font-family:var(--serif);font-size:clamp(2.6rem,4.2vw,4.4rem);line-height:1.12;letter-spacing:-.045em}h3{font-size:1.55rem;line-height:1.25;letter-spacing:-.035em}em{font-family:var(--serif);font-weight:400}a:focus-visible,button:focus-visible{outline:3px solid #ad6f98;outline-offset:6px}.skip{position:fixed;left:20px;top:-100px;background:var(--accent-light);padding:16px;z-index:100}.skip:focus{top:15px}.section-pad{padding:90px max(5vw,24px)}.eyebrow{font-size:.78rem;letter-spacing:.15em;font-weight:600;line-height:1.5;margin:0}.header{height:84px;padding:0 max(5vw,24px);display:flex;justify-content:flex-end;align-items:center;background:var(--ink);color:white;border-bottom:1px solid #ffffff24}.wordmark{font-size:1.2rem;font-weight:600;letter-spacing:-.055em}.wordmark span{color:var(--accent-light)}nav{display:flex;align-items:center;gap:clamp(24px,4vw,56px);font-size:.9rem}nav a{padding:12px 0}nav a:hover{color:var(--accent-light)}.nav-contact{margin-left:0}.nav-contact span{margin-left:14px}.menu-toggle{display:none}
.hero{background:var(--ink);color:white;padding-top:48px;padding-bottom:28px}.hero-top{display:flex;justify-content:space-between;color:var(--muted);gap:20px}.hero-location{font-size:.85rem}.hero h1{font-family:var(--serif);font-size:clamp(6.4rem,13.8vw,14rem);line-height:.85;letter-spacing:-.075em;padding:55px 0 58px}.hero h1>span{display:block;margin-left:19%;margin-top:6px}.period{color:var(--accent-light)}.hero-bottom{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding-bottom:56px}.hero-statement{font-size:clamp(1.8rem,2.65vw,2.8rem);line-height:1.25;letter-spacing:-.045em;margin:0}.hero-statement em{color:var(--accent-light)}.hero-intro{max-width:445px;margin-left:auto}.hero-intro p{font-size:1.05rem;color:#d5c9d5;margin-bottom:24px}.text-link{font-size:.93rem;display:inline-flex;align-items:center;gap:32px;border-bottom:1px solid;padding-bottom:8px;line-height:1.5}.text-link:hover{color:#7d416e}.text-link.light:hover{color:var(--accent-light)}.hero-foot{display:flex;justify-content:space-between;gap:24px;padding-top:22px;border-top:1px solid #ffffff24;font-size:.77rem;color:var(--muted);line-height:1.5}.hero-foot span:last-child{letter-spacing:.08em}
.intro{display:grid;grid-template-columns:1fr 2fr;gap:70px;padding-top:100px;padding-bottom:100px}.intro>div{max-width:730px}.intro h2{color:var(--accent);margin-bottom:32px}.intro>div p{max-width:630px;font-size:1.1rem;color:var(--text)}.intro>div p:last-child{margin-bottom:0}.expertise{background:#f8f4f7}.section-heading h2{color:var(--accent)}.section-heading{display:grid;grid-template-columns:1fr 2fr;gap:70px;margin-bottom:60px}.expertise-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:44px}.expertise article{border-top:1px solid #c2aebe;padding-top:22px}.index{font-size:.85rem;color:#7d416e;display:inline-block}.expertise h3{font-size:2rem;margin:32px 0 22px}.expertise article p{color:var(--text);font-size:1rem}.tags{list-style:none;display:flex;gap:8px;flex-wrap:wrap;margin:24px 0 0;padding:0}.tags li{border:1px solid #d9c6d4;padding:7px 10px;border-radius:4px;font-size:.8rem;line-height:1.35}
.project{background:var(--ink);color:white}.project-top{display:flex;justify-content:space-between;gap:24px;color:var(--muted)}.project-meta{font-size:.78rem;letter-spacing:.06em}.project-lead{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:65px;margin:50px 0 42px}.project-lead h2{font-family:var(--sans);font-size:clamp(3.5rem,7.3vw,7.3rem);font-weight:600;letter-spacing:-.09em}.project-lead h2>span:not(.period){font-weight:400}.project-subtitle{font-family:var(--serif);font-size:2rem;line-height:1.2;letter-spacing:-.035em;margin:0 0 24px}.project-description{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding-bottom:32px}.project-description p{color:#d5c9d5;font-size:1.07rem;max-width:500px}.contributions article{display:grid;grid-template-columns:40px 1fr 210px;gap:30px;border-top:1px solid #ffffff28;padding:28px 0}.contributions h3{margin:0 0 14px;font-size:1.4rem}.contributions p{color:#d5c9d5;max-width:630px;margin:0;font-size:1rem}.contributions .index{color:var(--accent-light);padding-top:5px}.contribution-label{text-align:right;font-size:.75rem;letter-spacing:.055em;color:var(--muted);padding-top:5px;line-height:1.5}.project-environment{border-top:1px solid #ffffff28;padding-top:25px;margin-top:18px}.project-environment>span{font-size:.8rem;color:var(--muted)}.project-environment p{font-size:.88rem;margin:12px 0 0;color:#e8dce5}
.approach{display:grid;grid-template-columns:1fr 1fr;gap:80px;background:var(--accent-soft)}.approach .eyebrow{margin-bottom:28px}.approach h2{color:var(--accent);font-size:clamp(2.8rem,3.5vw,3.8rem)}.approach-content>p{font-size:1.05rem;color:#53404f}.process{list-style:none;padding:0;margin:30px 0 0;border-top:1px solid #c8a9bf}.process li{padding:15px 0;border-bottom:1px solid #c8a9bf;font-size:1rem}.process span{display:inline-block;width:50px;font-size:.8rem;color:#7d416e}.timeline article{display:grid;grid-template-columns:1fr 1.25fr 1fr;gap:50px;border-top:1px solid var(--line);padding:28px 0}.date{font-size:.78rem;letter-spacing:.06em;line-height:1.6;color:#665d69}.timeline h3{font-size:1.25rem;margin-bottom:10px}.timeline article>div p{font-size:.78rem;letter-spacing:.05em;color:#665d69;margin-bottom:0}.timeline article>p:last-child{font-size:.95rem;color:var(--text);margin-bottom:0}.education{display:flex;justify-content:space-between;gap:32px;margin-top:26px;padding-top:26px;border-top:1px solid var(--line)}.education p{font-size:.9rem;margin:0}.education span{display:block;font-size:.8rem;color:#665d69;margin-top:5px}
.contact{background:var(--ink);color:white}.contact .eyebrow{color:var(--muted);margin-bottom:34px}.contact h2{font-size:clamp(3rem,5.7vw,6rem)}.contact h2 em{color:var(--accent-light)}.contact-bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-top:50px}.contact-bottom p{margin:0;color:#d5c9d5}.contact-button{display:inline-flex;align-items:center;justify-content:space-between;gap:50px;background:var(--accent);color:white;padding:22px 28px;font-size:.96rem;transition:background .15s}.contact-button:hover{background:#69345d}.footer{padding:28px max(5vw,24px);display:flex;justify-content:space-between;gap:24px;align-items:center;background:var(--ink);border-top:1px solid #ffffff24;color:white}.footer>span{font-size:.8rem;color:var(--muted)}
@media(min-width:1600px){.section-pad{padding-left:max(5vw,calc((100vw - 1400px)/2));padding-right:max(5vw,calc((100vw - 1400px)/2))}.hero h1{font-size:14rem}}
@media(max-width:900px){.section-pad{padding:65px 28px}.header{padding:0 28px}nav{gap:20px}.hero h1{font-size:15.5vw;padding:50px 0}.hero-bottom{gap:35px}.hero h1>span{margin-left:12%}.hero-foot{font-size:.75rem}.intro,.section-heading{grid-template-columns:1fr 2fr;gap:35px}.expertise-grid{gap:25px}.expertise h3{font-size:1.65rem}.project-lead{gap:35px;grid-template-columns:1fr 1fr}.project-description{gap:35px}.contributions article{grid-template-columns:28px 1fr;gap:20px}.contribution-label{display:none}.approach{gap:40px}.timeline article{grid-template-columns:140px 1fr;gap:24px}.timeline article>p:last-child{grid-column:2}.education{gap:30px}.contact-button{gap:24px}.footer>span:nth-child(2){display:none}}
@media(max-width:620px){.header{height:74px;padding:0 22px;position:relative;z-index:10}.wordmark{font-size:1.16rem}.menu-toggle{display:flex;align-items:center;gap:15px;background:none;border:1px solid #ffffff50;color:white;padding:10px 14px;font-size:.9rem}.menu-toggle span{font-size:1.2rem}nav{display:none;position:absolute;left:0;right:0;top:74px;background:var(--ink);padding:18px 22px 26px;gap:0;border-bottom:1px solid #ffffff50}nav[data-open="true"]{display:flex;flex-direction:column;align-items:stretch}nav a{padding:15px 0;font-size:1rem}.nav-contact{margin-left:0}.section-pad{padding:55px 22px}.hero{padding-top:30px;padding-bottom:24px}.hero-top{display:block}.hero-top .eyebrow{font-size:.75rem;letter-spacing:.1em}.hero-location{display:block;font-size:.8rem;margin-top:12px}.hero h1{font-size:20vw;line-height:.92;padding:44px 0 38px;letter-spacing:-.075em}.hero h1>span{margin-left:0}.hero-bottom{display:block;padding-bottom:32px}.hero-statement{font-size:2rem;line-height:1.25;margin-bottom:27px}.hero-intro{max-width:none}.hero-intro p{font-size:1rem}.hero-foot{display:block}.hero-foot span{display:block}.hero-foot span:last-child{margin-top:10px;font-size:.75rem;letter-spacing:.04em}.intro,.section-heading,.approach{display:block}.intro>.eyebrow,.section-heading>.eyebrow{margin-bottom:26px}h2{font-size:2.6rem}.intro h2{margin-bottom:25px}.intro>div p{font-size:1rem}.section-heading{margin-bottom:35px}.expertise-grid{display:block}.expertise article+article{margin-top:32px}.expertise h3{font-size:1.75rem;margin:16px 0}.expertise h3 br{display:none}.tags{margin-top:18px}.project-top{display:block}.project-meta{display:block;margin-top:12px;font-size:.75rem}.project-lead{display:block;margin-top:36px}.project-lead h2{font-size:18vw;letter-spacing:-.09em;margin-bottom:28px}.project-subtitle{font-size:1.9rem}.project-description{display:block;padding-bottom:16px}.project-description p{font-size:1rem}.contributions article{padding:24px 0;gap:13px;grid-template-columns:23px 1fr}.contributions h3{font-size:1.3rem}.contributions p{font-size:1rem}.approach h2{color:var(--accent);font-size:2.6rem;margin-bottom:30px}.approach-content>p{font-size:1rem}.timeline article{display:block;padding:23px 0}.timeline .date{margin-bottom:12px}.timeline article>p:last-child{margin-top:12px}.timeline h3{font-size:1.3rem}.education{display:block;margin-top:8px}.education p+p{margin-top:20px}.contact h2{font-size:2.75rem}.contact-bottom{display:block;margin-top:30px}.contact-button{margin-top:30px;width:100%;gap:15px;padding:20px;font-size:.93rem}.footer{padding:25px 22px;flex-wrap:wrap;gap:20px}.footer>span{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*{transition:none!important}}

/* Portrait supplied by Laura; keep the original photograph unchanged. */
.hero-main{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.75fr);align-items:center;gap:70px;padding:50px 0 55px}
.hero-copy{min-width:0}.hero-main h1{font-size:clamp(4.5rem,8vw,8rem);line-height:.98;padding:0;letter-spacing:-.065em}.hero-main h1>span{margin:0}
.hero-role{font-size:1.15rem;color:var(--accent-light);margin:22px 0 27px;font-weight:600}.hero-main .hero-statement{font-size:clamp(1.75rem,2.4vw,2.4rem);margin-bottom:24px}
.hero-main .hero-intro{margin:0;max-width:490px}.hero-main .hero-intro p{font-size:1rem}.hero-portrait{width:85%;max-width:360px;justify-self:center;margin:0;align-self:center;border-top:4px solid var(--accent);overflow:hidden;border-radius:3px;aspect-ratio:4/5}.hero-portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 42%}
@media(max-width:900px){.hero-main{gap:35px;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);padding:40px 0}.hero-main h1{font-size:8.5vw}.hero-main .hero-statement{font-size:1.75rem}.hero-portrait{aspect-ratio:3/4}}
@media(max-width:620px){.hero-main{grid-template-columns:1fr;gap:32px;padding:34px 0}.hero-main h1{font-size:20vw}.hero-role{font-size:1.05rem;margin:16px 0 24px}.hero-main .hero-statement{font-size:1.9rem}.hero-portrait{width:78%;max-width:290px;aspect-ratio:4/5;justify-self:center}}

/* Earlier portfolio content, preserving the approved art direction. */
.intro h2 em{color:var(--accent)}.section-intro{max-width:620px;margin:24px 0 0;font-size:1.05rem;color:var(--text)}
.creative-work{background:#fff}.creative-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.creative-project{min-width:0}.creative-project figure{margin:0;aspect-ratio:1014/738;background:var(--accent-soft);overflow:hidden;border-radius:6px}.creative-project img{display:block;width:100%;height:100%;object-fit:cover}.creative-project-copy{padding:25px 0 0}.creative-project .eyebrow{color:var(--accent);font-size:.75rem;letter-spacing:.07em}.creative-project h3{font-family:var(--serif);font-size:2.3rem;margin:14px 0 6px;line-height:1.1}.project-category{font-size:.9rem;color:var(--accent);margin-bottom:20px}.creative-project-copy>p:not(.eyebrow):not(.project-category){font-size:1rem;color:var(--text)}
@media(max-width:900px){.header nav{gap:20px}.header .nav-contact{margin-left:0}.creative-grid{gap:28px}}
@media(max-width:620px){.creative-grid{grid-template-columns:1fr;gap:40px}.creative-project h3{font-size:2rem}.creative-project .eyebrow{line-height:1.7}.section-intro{font-size:1rem}}

/* Detailed professional experiences; retain the approved plum art direction. */
.project-identity .allinone-logo{font-size:1rem;background:white;border-radius:5px;padding:26px 24px;max-width:230px;width:100%;line-height:1}.allinone-logo img{display:block;width:140px;max-width:100%;height:auto;margin:auto}.role-label{color:var(--accent-light)!important;font-size:.8rem!important;font-weight:600;letter-spacing:.07em;margin-bottom:16px}.contributions-title{font-family:var(--serif);font-size:1.8rem;margin:12px 0 25px}.experience-card{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:6px;overflow:hidden;min-width:0;background:white}.brand-panel{flex-shrink:0;height:210px;display:flex;align-items:center;justify-content:center}.brand-panel img{object-fit:contain;max-width:85%;height:auto;display:block}.brand-gaming{background:#fff;border-bottom:1px solid var(--line)}.brand-gaming img{width:350px;max-height:180px}.brand-alinea{background:#fff;border-bottom:1px solid var(--line)}.brand-alinea img{width:350px;max-height:180px}.experience-copy{display:flex;flex-direction:column;flex:1;padding:30px}.experience-copy .eyebrow{color:var(--accent);font-size:.75rem;letter-spacing:.07em}.experience-copy h3{font-family:var(--serif);font-size:2.2rem;margin:17px 0 12px}.experience-role{font-size:1.05rem;font-weight:600;line-height:1.45;min-height:3.1rem;color:var(--accent)}.experience-copy>p:not(.eyebrow):not(.experience-role){font-size:1rem;color:var(--text)}.experience-details{padding-left:20px;margin:22px 0;font-size:1rem;line-height:1.65;color:var(--text)}.experience-details li{padding-left:4px;margin-bottom:14px}.experience-details li::marker{color:var(--accent)}.experience-focus{margin-top:auto;min-height:calc(2.72rem + 19px);border-top:1px solid var(--line);padding-top:18px;font-size:.85rem;line-height:1.6;color:var(--accent)}
@media(max-width:620px){.project-identity .allinone-logo{max-width:340px;padding:24px}.brand-panel{height:175px}.brand-gaming img{width:350px;max-height:150px}.brand-alinea img{width:280px;max-height:150px}.experience-copy{padding:24px}.experience-copy h3{font-size:2rem}.experience-role{min-height:0}}
.certifications{background:var(--accent-soft)}.certification-grid{display:grid;grid-template-columns:1fr 1fr;gap:42px}.certification{border-top:1px solid #c8a9bf;padding:26px 0 0}.certification-issuer{color:var(--accent);font-size:1rem;font-weight:600;margin:0 0 18px}.certification h3{font-size:clamp(1.35rem,2.1vw,1.8rem);line-height:1.35;letter-spacing:-.025em}.certification-date{font-size:.95rem;color:var(--text);margin:20px 0 0}@media(max-width:620px){.certification-grid{grid-template-columns:1fr;gap:32px}}

.brand-upnbiz{background:var(--accent-soft);border-bottom:1px solid var(--line);color:var(--accent)}.brand-upnbiz span{font-family:var(--serif);font-size:3rem;letter-spacing:-.04em}
@media(min-width:621px) and (max-width:1100px){.creative-grid{grid-template-columns:1fr}.experience-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr)}.brand-panel{height:100%;min-height:210px}.brand-upnbiz span{font-size:2.5rem}}

.brand-upnbiz{background:#fff}.brand-upnbiz img{width:260px;max-height:175px}.certification-logo{height:100px;margin-bottom:24px;display:flex;align-items:center}.certification-logo img{width:auto;height:auto;max-width:140px;max-height:100px;object-fit:contain}

.project-intro{display:grid;grid-template-columns:minmax(230px,.7fr) minmax(0,1.3fr);gap:clamp(40px,6vw,88px);align-items:start;margin:36px 0 64px}.project-identity .role-label{margin:28px 0 12px}.project-identity .project-meta{color:var(--muted);font-size:.9rem;letter-spacing:.025em;line-height:1.7;margin:0}.project-copy{max-width:680px}.project-copy .project-subtitle{font-size:clamp(2rem,3.1vw,2.8rem);color:white;margin:0 0 28px}.project-copy>p:not(.project-subtitle){color:#d5c9d5;font-size:1.07rem;line-height:1.7;margin-bottom:22px}.project-copy .text-link{margin-top:6px}
@media(max-width:900px){.project-intro{grid-template-columns:230px minmax(0,1fr);gap:36px}}
@media(max-width:620px){.project-intro{grid-template-columns:1fr;gap:32px;margin:26px 0 46px}.project-identity .allinone-logo{max-width:200px}.project-identity .role-label{margin-top:22px}.project-copy .project-subtitle{font-size:2rem}.project-copy>p:not(.project-subtitle){font-size:1rem}}

.experience-status{display:block;margin-top:8px;font-size:.9rem;font-weight:400;color:var(--text)}

/* Focused portfolio: concise copy, product examples and a direct contact. */
.section-pad{padding-top:72px;padding-bottom:72px}.hero{padding-top:40px;padding-bottom:28px}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 28px}.file-format{font-family:var(--sans);font-size:.75rem;letter-spacing:.03em;white-space:nowrap;margin-left:12px;color:var(--accent-light)}.hero-actions .text-link{font-size:.95rem}.project-intro{margin:28px 0 40px}.project-identity .allinone-logo{max-width:190px;padding:20px}.project-identity .allinone-logo img{width:110px}.case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.case-study{min-width:0;border:1px solid #ffffff30;border-radius:6px;overflow:hidden}.case-image{display:block;position:relative;background:white;aspect-ratio:2/1;overflow:hidden}.case-image img{display:block;width:100%;height:100%;object-fit:contain}.case-image>span{position:absolute;right:12px;bottom:12px;padding:7px 10px;border-radius:3px;color:white;background:var(--ink);font-size:.8rem}.case-image:hover>span{background:var(--accent)}.case-copy{padding:26px}.case-copy .eyebrow{color:var(--accent-light);font-size:.8rem;letter-spacing:.06em;margin:0 0 14px}.case-copy h3{font-size:1.55rem;line-height:1.3;margin:0 0 18px}.case-copy p:not(.eyebrow){font-size:1rem;color:#d5c9d5;margin:0 0 14px}.case-copy p:last-child{margin-bottom:0}.case-copy strong{color:white;font-weight:400}.image-credit{font-size:.8rem;color:var(--muted);margin:18px 0 0}.image-credit a{text-decoration:underline;text-underline-offset:3px}.project-method{display:grid;grid-template-columns:.7fr 1.3fr;gap:12px 48px;border-top:1px solid #ffffff28;padding-top:32px;margin-top:36px}.project-method h3{grid-row:span 2;font-size:1.55rem}.project-method p{color:#d5c9d5;font-size:1rem;margin:0}.project-method .tool-note{font-size:.85rem;color:var(--muted)}.brand-panel{height:140px}.brand-panel img{max-height:110px}.brand-upnbiz img{width:210px}.brand-alinea img{width:280px}.experience-copy{padding:26px}.experience-copy h3{font-size:1.85rem}.experience-details{margin:16px 0 24px}.career-summary{margin-top:44px;padding-top:32px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 2fr;gap:36px}.career-summary h3{font-family:var(--serif);font-size:1.8rem}.career-steps{display:grid;grid-template-columns:1fr 1fr;gap:32px}.career-steps p{font-size:.95rem;color:var(--text);margin:0}.career-steps span{display:block;font-size:.78rem;letter-spacing:.04em;color:var(--accent);margin-bottom:10px}.career-steps strong{display:block;font-size:1.05rem;font-weight:600;color:var(--ink);margin-bottom:6px}.certifications .section-heading{margin-bottom:32px}.education-line{display:flex;justify-content:space-between;gap:20px;align-items:baseline;margin:0 0 30px;color:var(--ink);font-size:1rem}.education-line span{font-size:.95rem;color:var(--text);white-space:nowrap}.certification{display:grid;grid-template-columns:90px minmax(0,1fr);column-gap:24px;align-content:start;padding-top:24px}.certification-logo{grid-column:1;grid-row:1/span 3;height:90px;margin:0;justify-content:center}.certification-logo img{max-width:90px;max-height:76px}.certification-issuer,.certification h3,.certification-date{grid-column:2}.certification-issuer{margin:0 0 8px;font-size:.9rem}.certification h3{font-size:1.3rem;margin:0 0 10px}.certification-date{font-size:.85rem;margin:0}.contact-actions{display:flex;flex-direction:column;align-items:flex-start;gap:24px}.contact-actions .contact-button{font-size:1.1rem}.contact .text-link{font-size:1rem}
@media(min-width:621px) and (max-width:1100px){.brand-panel{height:100%;min-height:140px}.career-summary{grid-template-columns:1fr}.case-copy{padding:22px}.case-copy h3{font-size:1.4rem}}
@media(max-width:900px){.project-method{grid-template-columns:1fr;gap:18px}.project-method h3{grid-row:auto}.certification{grid-template-columns:70px minmax(0,1fr);column-gap:18px}.certification-logo img{max-width:70px;max-height:70px}}
@media(max-width:620px){.section-pad{padding-top:50px;padding-bottom:50px}.hero{padding-top:28px;padding-bottom:22px}.hero-actions{gap:12px}.case-grid{grid-template-columns:1fr;gap:24px}.case-copy{padding:22px}.case-copy h3{font-size:1.4rem}.project-intro{gap:28px;margin-bottom:30px}.project-method{margin-top:28px;padding-top:26px}.brand-panel{height:135px}.experience-copy{padding:24px}.career-summary,.career-steps{grid-template-columns:1fr;gap:24px}.education-line{display:block}.education-line span{display:block;margin-top:6px}.certification-grid{gap:28px}.certification{grid-template-columns:70px minmax(0,1fr)}.contact-bottom{gap:24px}.contact-actions{gap:20px}}

/* Full education history, using the LinkedIn titles supplied by Laura. */
.education-list{margin:0 0 40px}.education-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;padding:22px 0;border-top:1px solid #c8a9bf}.education-item h3{font-size:1.1rem;line-height:1.5;letter-spacing:0;margin:0}.education-item p{font-size:.95rem;color:var(--text);margin:6px 0 0}.education-item>p{text-align:right;white-space:nowrap;margin:0}.education-item>p span{display:block;margin-top:4px}.education-item>div>p{max-width:680px}@media(max-width:620px){.education-item{grid-template-columns:1fr;gap:10px;padding:20px 0}.education-item>p{text-align:left}.education-item>p span{display:inline;margin-left:12px}}

/* Give the personal introduction a soft background and expand the expertise detail. */
#a-propos{background:#f8f4f7;border-top:1px solid var(--line)}.expertise-details{margin:22px 0 0;padding-left:19px;color:var(--text);font-size:1rem;line-height:1.65}.expertise-details li{margin-bottom:14px;padding-left:3px}.expertise-details li::marker{color:var(--accent)}

/* One shared divider and two balanced groups for education and credentials. */
.credentials-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;border-top:1px solid #c8a9bf;padding-top:36px}.credentials-layout .degree h3{max-width:430px;font-size:1.5rem;line-height:1.4;letter-spacing:-.025em;margin:0 0 16px}.credentials-layout .degree .certification-issuer{margin-bottom:12px}.credentials-layout .certification-grid{grid-template-columns:1fr;gap:36px}.credentials-layout .certification{border:0;padding:0}.credentials-layout .certification-date{font-size:.95rem}.credentials-layout .certification-logo{align-items:flex-start;padding-top:4px}@media(max-width:900px){.credentials-layout{gap:36px}}@media(max-width:620px){.credentials-layout{grid-template-columns:1fr;gap:38px;padding-top:28px}.credentials-layout .degree h3{font-size:1.3rem}.credentials-layout .certification-grid{gap:30px}}

/* Language control stays visible outside the collapsible mobile navigation. */
.header{gap:28px}.header nav{gap:clamp(20px,2.8vw,40px)}.language-switch{display:flex;align-items:center;flex-shrink:0;gap:10px;margin-left:8px}.language-switch a{display:flex;align-items:center;justify-content:center;min-width:42px;min-height:42px;border:1px solid #ffffff50;border-radius:3px;font-size:.82rem;letter-spacing:.06em}.language-switch a:hover{background:#ffffff10;color:var(--accent-light)}.language-switch a:focus-visible{outline-offset:-4px}@media(max-width:900px){.header{gap:18px}.header nav{gap:18px;font-size:.85rem}}@media(max-width:620px){.header{justify-content:space-between}.header nav{gap:0}.language-switch a{min-width:40px;min-height:40px}}

.degree-list{display:grid;gap:32px;align-content:start}.credentials-layout .degree h3{max-width:520px;font-size:1.3rem;margin-bottom:12px}.degree-detail{font-size:.95rem;color:var(--text);margin:0 0 12px;line-height:1.5}.credentials-layout .certification-grid{align-content:start}

/* One landscape interlude, with the existing plum palette. */
.landscape-break{position:relative;isolation:isolate;height:clamp(320px,34vw,500px);overflow:hidden;background:var(--ink)}
.landscape-visual{position:absolute;inset:-80px 0;z-index:-2}
.landscape-visual img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 50%}
.landscape-break::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,rgba(48,41,56,.16),rgba(125,65,110,.10) 50%,rgba(48,41,56,.24))}
@media(min-width:621px) and (prefers-reduced-motion:no-preference){[data-parallax-layer]{will-change:transform}}
@media(max-width:620px){.landscape-break{height:280px}.landscape-visual{inset:0}.landscape-visual img{object-position:48% center}}
@media(prefers-reduced-motion:reduce),(max-width:620px){[data-parallax-layer]{transform:none!important;will-change:auto}}
@media print{[data-parallax-layer]{transform:none!important;will-change:auto}}

/* A single illustrated plum block; the pattern remains decorative. */
.contact{position:relative;isolation:isolate;overflow:hidden;background:#433047}
.contact::before{content:"";position:absolute;inset:0 0 0 25%;z-index:-1;pointer-events:none;background:url("assets/mountain-forest-lines.svg") no-repeat right center;background-size:auto 100%;opacity:.55;mask-image:linear-gradient(to right,transparent,#000 28%)}
@media(max-width:900px){.contact::before{left:12%;opacity:.4;background-position:65% center}}
@media(max-width:620px){.contact::before{inset:0;opacity:.22;background-position:70% center;mask-image:linear-gradient(to bottom,transparent,#000 30%)}}

/* Quiet topographic lines behind the introduction, with no extra movement. */
.hero{position:relative;isolation:isolate;overflow:hidden}
.hero::before,.hero::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:-1}
.hero::before{background:radial-gradient(ellipse at 78% 45%,rgba(125,65,110,.29),transparent 56%),radial-gradient(ellipse at 18% 15%,rgba(125,65,110,.12),transparent 42%)}
.hero::after{background:url("assets/hero-contours.svg") no-repeat center top;background-size:cover;opacity:.32;mask-image:linear-gradient(to bottom,#000 45%,transparent 94%)}
@media(max-width:620px){.hero::after{background-size:auto 85%;background-position:58% top;opacity:.2}.hero::before{background:radial-gradient(ellipse at 75% 55%,rgba(125,65,110,.22),transparent 64%)}}
