:root{--page:#f5f1eb;--ink:#1F1411;--rust:#b84a32}html{scroll-behavior:smooth;scroll-padding-top:85px}body{overflow-x:clip;overflow-y:auto;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}.site-header{display:flex;align-items:center;justify-content:space-between;padding:23px 4vw;border-bottom:1px solid #1F141125;background:var(--page);position:relative;z-index:2}.wordmark{font-family:Georgia,serif;font-size:33px;letter-spacing:-5px}.wordmark span{font:10px Arial;margin-left:8px;vertical-align:top;letter-spacing:0}nav{display:flex;gap:30px;font-size:12px}.motion-toggle{background:none;border:1px solid #1F141140;border-radius:30px;padding:9px 15px;font-size:11px;cursor:pointer}.hero{position:relative;padding:40px 4vw 34px;min-height:calc(100svh - 85px);overflow:hidden}.eyebrow,.small-label{font-size:10px;letter-spacing:1.7px;font-weight:600}.eyebrow span{opacity:.5}.hero h1{font-size:clamp(60px,9.7vw,158px);line-height:.92;letter-spacing:-.07em;font-weight:700;margin:60px 0 50px;position:relative;z-index:1}.line{display:block;overflow:hidden;padding-bottom:.08em}.line>span{display:block}em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.06em}.hero-bottom{display:flex;gap:30px;align-items:center}.hero-bottom p{font-family:Georgia,serif;line-height:1.5;font-size:17px;margin:0 auto 0 0}.round-link{width:62px;height:62px;border:1px solid #1F141160;border-radius:50%;display:grid;place-items:center;font-size:27px;transition:background .2s,color .2s}.round-link:hover{background:var(--ink);color:var(--page)}.hero-orbit{position:absolute;right:5%;top:34%;font-size:clamp(90px,16vw,250px);color:var(--rust);line-height:1;z-index:0}.graphic-scene{position:relative;background:var(--ink);color:var(--page)}.graphic-stage{height:100svh;min-height:500px;display:grid;place-items:center;position:relative;overflow:hidden}.graphic{width:min(55vw,550px);height:min(55vw,550px);position:absolute;color:var(--rust)}.scene-caption{position:absolute;top:10%;left:4vw}.scene-message{font-size:clamp(55px,8vw,130px);line-height:.97;letter-spacing:-.06em;text-align:center;z-index:1;pointer-events:none}.scene-message span,.scene-message em{display:block}.scene-number{position:absolute;bottom:7%;right:4vw}.scene-skip{position:absolute;top:20px;right:4vw;z-index:5;font-size:12px;border-bottom:1px solid;padding:4px}.section-pad{padding:100px 4vw}.about h2,.exploring h2,.notes h2{font-size:clamp(48px,7.3vw,115px);line-height:1;letter-spacing:-.065em;margin:60px 0;font-weight:600}.about-bottom{display:flex;justify-content:space-between;align-items:center}.about-bottom p{font-size:20px;line-height:1.5;margin-right:8vw}.mini-symbol{font-size:130px;color:var(--rust)}.exploring{background:#e8e1d7;overflow:hidden}.exploring-heading{display:flex;justify-content:space-between;align-items:center;gap:30px}.exploring-heading p{font:17px/1.5 Georgia,serif}.card-field{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;padding:100px 0 50px}.idea-card{min-height:280px;padding:24px;display:flex;flex-direction:column;background:var(--page);border:1px solid #1F141130;transform-origin:center}.idea-card:nth-child(2){background:var(--rust);color:var(--page)}.idea-card:nth-child(4){background:var(--ink);color:var(--page)}.idea-card span{font-size:9px;letter-spacing:1px}.idea-card h3{font:25px Georgia,serif;letter-spacing:-1px}.idea-card b{font-size:90px;font-weight:400;line-height:1;margin-top:auto;align-self:flex-end}.notes{background:var(--rust);color:var(--page)}.back-link{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #f5f1eb70;padding-top:28px;font-size:11px;letter-spacing:1px}.back-link span{font-size:50px}footer{padding:30px 4vw;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.4px}.skip-link{position:fixed;top:10px;left:10px;z-index:100;background:var(--ink);color:var(--page);padding:12px;transform:translateY(-150%)}.skip-link:focus{transform:none}:focus-visible{outline:2px solid currentColor;outline-offset:5px}.motion-paused .hero-orbit{animation:none}@media(max-width:700px){nav{gap:15px;font-size:11px}.motion-toggle{padding:8px;font-size:9px}.hero{padding-top:30px}.hero h1{font-size:12vw;margin:100px 0 70px}.hero-orbit{top:20%;right:7%;font-size:85px}.hero-bottom .small-label{display:none}.section-pad{padding:70px 5vw}.about-bottom p{font-size:16px;margin-right:0}.mini-symbol{font-size:80px}.exploring-heading{display:block}.card-field{grid-template-columns:1fr 1fr;padding:40px 0;gap:12px}.idea-card{min-height:230px;padding:18px}.idea-card h3{font-size:22px}.idea-card b{font-size:70px}.graphic{width:75vw;height:75vw}.scene-caption{max-width:60%;font-size:9px}.scene-message{font-size:11vw}footer{gap:20px;font-size:8px}.hero-bottom p{font-size:15px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.graphic{opacity:.35}.scene-skip{display:none}}
/* Ownitt-inspired opening: one centered greeting and one graphic gesture. */
.greeting-hero{padding:0;min-height:0;overflow:hidden;background:var(--page)}.greeting-stage{height:calc(100svh - 85px);min-height:560px;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden}.greeting-copy{text-align:center;position:relative;z-index:2;margin-top:-85px}.greeting-hero h1{font-family:Impact,'Arial Narrow',Arial,sans-serif;font-stretch:condensed;font-size:clamp(75px,10vw,150px);font-weight:900;line-height:1;letter-spacing:-.055em;margin:0 0 22px;white-space:nowrap}.greeting-hero h1 em{font-family:inherit;font-style:normal;font-weight:inherit;letter-spacing:inherit}.greeting-subtitle{display:block;font-size:11px;letter-spacing:2px;line-height:2}.greeting-subtitle em{display:block;font-size:28px;letter-spacing:-1px;text-transform:none}.connection-mark{position:absolute;left:50%;top:65%;width:55px;height:55px;display:grid;place-items:center;transform:translate(-50%,-50%);z-index:1;color:var(--ink)}.connection-mark span{display:block;width:5px;height:46px;transform:rotate(40deg);background:currentColor}.greeting-scroll{position:absolute;bottom:8%;display:flex;flex-direction:column;text-align:center;gap:10px;font-size:9px;letter-spacing:2px;z-index:3}.greeting-scroll span:last-child{font-size:22px}.greeting-note,.greeting-index{position:absolute;bottom:6%;font-size:9px;letter-spacing:1.5px;line-height:1.7;z-index:2}.greeting-note{left:4vw}.greeting-index{right:4vw}.hero-skip{position:absolute;right:4vw;top:20px;z-index:4;font-size:10px;opacity:0}.hero-skip:focus-visible{opacity:1}.story-about{background:var(--ink);color:var(--page)}.story-copy{max-width:660px;margin-left:auto}.story-copy p{font-size:clamp(18px,1.7vw,25px);line-height:1.65;letter-spacing:-.025em;margin:0 0 30px}.story-project{border-bottom:1px solid #1F141130}.story-project h2{font-size:clamp(50px,8vw,120px);line-height:1;letter-spacing:-.065em;margin:55px 0}.community{background:#e8e1d7}.network-illustration{display:flex;align-items:center;margin-top:70px;gap:0}.network-illustration span{border:1px solid;border-radius:50%;width:145px;height:145px;display:grid;place-items:center;font-size:10px;letter-spacing:1px;text-align:center;flex-shrink:0}.network-illustration i{display:block;height:1px;background:var(--ink);flex:1}.community-labels{display:flex;gap:15px;margin-top:60px;flex-wrap:wrap}.community-labels span{border:1px solid #1F141150;border-radius:50%;padding:45px 25px;font-size:11px;letter-spacing:1px}.summer-note{font:italic 23px Georgia,serif;margin:60px 0 0;transform:rotate(-3deg);color:var(--rust)}.story-signoff{background:var(--ink);color:var(--page)}.story-signoff .back-link{margin-top:60px}@media(max-width:700px){.greeting-stage{height:calc(100svh - 73px);min-height:500px}.greeting-hero h1{font-size:clamp(60px,14vw,95px);margin:0 0 24px}.greeting-copy{margin-top:-65px}.greeting-note{font-size:7px;left:5vw}.greeting-index{font-size:7px;right:5vw}.connection-mark{top:62%}.story-copy{margin-left:0}.story-project h2{font-size:12vw}.network-illustration span{width:90px;height:90px;font-size:8px;letter-spacing:0}.community-labels{gap:8px}.community-labels span{padding:30px 12px;font-size:9px}}@media(prefers-reduced-motion:reduce){.hero-skip{display:none}}
/* Light persistent frame. */
html{scroll-behavior:auto;scroll-padding-top:65px}.site-header{position:fixed;inset:0 0 auto;z-index:8;padding:24px 3.5vw;border:0;background:none;pointer-events:none;color:var(--ink);transition:color .25s}.site-header a,.site-header nav{pointer-events:auto}.site-header nav{gap:10px;font-size:12px;letter-spacing:.02em}.site-header nav a{opacity:.48;transition:opacity .25s}.site-header nav a[aria-current],.site-header nav a:hover{opacity:1}.site-header nav span{opacity:.4}.wordmark{display:block;width:48px;opacity:.65;letter-spacing:0}.wordmark svg{display:block;width:100%;height:auto;fill:currentColor}.social-frame{position:fixed;bottom:25px;left:3.5vw;z-index:8;display:flex;gap:10px;font-size:11px;color:var(--ink);transition:color .25s}.pending-social{opacity:.4}.motion-toggle{position:fixed;bottom:19px;right:3.5vw;z-index:8;width:30px;height:30px;padding:0;display:grid;place-items:center;border:0;opacity:.45;background:none;color:var(--ink);transition:color .25s}.on-dark .site-header,.on-dark .social-frame,.on-dark .motion-toggle{color:var(--page)}.greeting-stage{height:100svh;min-height:540px}.greeting-copy{margin-top:-65px}.greeting-hero h1{font-size:clamp(70px,9vw,135px)}.greeting-scroll{bottom:12%}.connection-mark{top:64%}.greeting-subtitle{letter-spacing:1.5px}.greeting-subtitle em{font-size:27px}.intro{pointer-events:auto}.intro.is-complete{pointer-events:none}.home-page .eyebrow{display:none}.story-project,.story-about{padding-top:120px;padding-bottom:120px}.globe-section{text-align:center;background:#e8e1d7}.globe-section h2,.writing-section h2{font-size:clamp(50px,7vw,110px);line-height:1;letter-spacing:-.06em}.travel-globe{display:block;width:min(70vw,460px);margin:50px auto;fill:none;stroke:var(--ink);stroke-width:1}.globe-note{font:italic 22px Georgia,serif}.writing-section p{font:20px/1.6 Georgia,serif;max-width:500px}.writing-section{min-height:75svh}footer{padding-bottom:80px}.story-signoff{padding-bottom:120px}@media(max-width:700px){.site-header{padding:22px 5vw}.site-header nav{gap:8px;font-size:11px}.wordmark{width:39px}.social-frame{display:none}.greeting-stage{height:100svh;min-height:520px}.greeting-hero h1{font-size:clamp(55px,14vw,95px)}.greeting-copy{margin-top:-70px}.greeting-scroll{bottom:10%}.connection-mark{top:62%}.story-project,.story-about{padding-top:85px;padding-bottom:85px}}body.intro-playing{overflow:hidden}.intro-playing .site-header,.intro-playing .social-frame,.intro-playing .motion-toggle{visibility:hidden}
.site-header.frame-dark,.social-frame.frame-dark,.motion-toggle.frame-dark{color:var(--page)}

.greeting-letter{display:inline-block;white-space:pre;vertical-align:baseline}.greeting-hero h1{font-kerning:none}.greeting-hero h1 .line{padding-bottom:.12em}
.greeting-hero h1{font-family:'Times New Roman',Times,serif;font-weight:400;font-size:inherit;letter-spacing:normal;margin:0 0 15px;line-height:1}.greeting-lettering{display:block;width:min(40vw,440px);height:auto;overflow:visible}.greeting-outline{fill:currentColor;stroke:currentColor;stroke-width:1.6px;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:0;fill-opacity:1}@media(max-width:700px){.greeting-lettering{width:44vw}.greeting-hero h1{font-size:inherit;margin-bottom:18px}}

/* NK outline opening leads directly into the biography. */
.logo-mark{fill:currentColor;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;stroke-dasharray:1;stroke-dashoffset:0;fill-opacity:1}
.story-about{min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding-top:130px;padding-bottom:110px}
.bio-title{font-size:clamp(42px,6.5vw,100px);font-weight:400;line-height:1.05;letter-spacing:-.055em;margin:0 0 60px}
@media(max-width:700px){.bio-title{font-size:11vw;margin-bottom:40px}.story-about{padding-top:110px;padding-bottom:85px}}

/* Bottom-up NK fill and the beige greeting wipe. */
.intro .logo-mark{fill-opacity:0!important}
.logo-pool{fill:var(--ink);fill-opacity:1;stroke:none}
.greeting-hero h1.greeting-text{font-family:'Times New Roman',Times,serif;font-size:clamp(32px,4.6vw,66px);font-weight:400;line-height:1.1;letter-spacing:-.04em;margin-bottom:20px}
.greeting-copy{z-index:12}
body.intro-playing .greeting-copy{position:relative}
@media(max-width:700px){.greeting-hero h1.greeting-text{font-size:7vw}}

.wordmark svg use{fill-opacity:1;stroke:none}

/* Typed greeting with a single line subtitle. */
.typing-character{display:inline-block}
.greeting-hero h1.greeting-text{margin-bottom:10px}
.greeting-subtitle{font-size:clamp(11px,1.1vw,15px);letter-spacing:.04em;line-height:1.4;white-space:nowrap}

.greeting-subtitle{font-family:Arial,Helvetica,sans-serif;font-size:11px;letter-spacing:1.5px;line-height:2;white-space:nowrap}

/* Subtitle underline becomes a rotating ink ribbon on scroll. */
.transition-underline{position:absolute;left:50%;top:0;width:120px;height:2px;margin-left:-60px;z-index:4;pointer-events:none;transform-origin:center}
.transition-underline span{display:block;width:100%;height:100%;background:var(--ink);border-radius:999px;transform-origin:center}

.slice-shadow{opacity:0;pointer-events:none}

.intro .logo-mark{stroke:none}
.nk-outline{fill:none;stroke:var(--ink);stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;stroke-dasharray:1;stroke-dashoffset:0}

.greeting-text{position:relative}.typing-cursor{position:absolute;top:.13em;width:2px;height:.82em;background:currentColor;opacity:0;visibility:hidden;pointer-events:none}

.header-logo-slice{fill:var(--page);stroke:none}

.wordmark{opacity:1}

.site-header nav{font-family:Arial,Helvetica,sans-serif;font-size:24px;letter-spacing:1.5px;line-height:2;gap:16px}
@media(max-width:700px){.site-header nav{font-size:22px;gap:10px}}

.site-header nav{font-family:'Times New Roman',Times,serif;font-size:18px;font-weight:400;letter-spacing:-.04em}
@media(max-width:700px){.site-header nav{font-size:16.5px}}

.social-frame{font-family:'Times New Roman',Times,serif;font-size:18px;font-weight:400;letter-spacing:-.04em;gap:16px;line-height:2}

.site-header nav,.social-frame{font-size:15.3px}
@media(max-width:700px){.site-header nav{font-size:14.025px}}

.site-header .frame-dark{color:var(--page)}
.site-header .wordmark,.site-header nav a,.site-header nav span{transition:color .08s linear}

/* Consistent Times New Roman text throughout the site. */
body,button,em,.greeting-subtitle,.hero-bottom p,.exploring-heading p,.idea-card h3,.summer-note,.globe-note,.writing-section p{font-family:'Times New Roman',Times,serif}
.story-about .bio-title{font-size:clamp(42px,6.5vw,100px);font-weight:400;line-height:1.05;letter-spacing:-.055em;margin:0 0 60px}
@media(max-width:700px){.story-about .bio-title{font-size:11vw;margin-bottom:40px}}

.header-name{position:absolute;left:50%;transform:translateX(-50%);font-family:'Times New Roman',Times,serif;font-size:11px;letter-spacing:1.5px;line-height:2;white-space:nowrap;transition:color .08s linear}
@media(max-width:700px){.header-name{font-size:9px;letter-spacing:.7px}}

.header-name{font-weight:400}

.header-name{font-size:18.4px}
@media(max-width:700px){.header-name{font-size:13.8px}}

.header-name{font-family:'Times New Roman',Times,serif;font-weight:400;letter-spacing:.3px}

.site-header::after{content:"";position:absolute;left:3.5vw;right:3.5vw;bottom:0;height:.5px;background:currentColor;opacity:.2;pointer-events:none}
@media(max-width:700px){.site-header::after{left:5vw;right:5vw}}

.site-header{padding-bottom:12px}
.site-header::after{left:0;right:0}
@media(max-width:700px){.site-header{padding-bottom:10px}.site-header::after{left:0;right:0}}

/* Keep the rotating wipe behind the persistent header surface. */
.site-header{background:var(--page);color:var(--ink);transition:background-color .08s linear,color .08s linear}
.site-header.frame-dark{background:var(--ink);color:var(--page)}
.site-header::after{opacity:.35;z-index:1}

/* Each story has its own page-sized stop beneath the persistent header. */
.home-page > section:not(.greeting-hero){min-height:calc(100svh - var(--frame-height,67px));box-sizing:border-box}

/* Balance page content between the fixed header and contact row. */
.home-page > section:not(.greeting-hero){display:flex;flex-direction:column;justify-content:center;padding-top:40px;padding-bottom:calc(var(--footer-space,56px) + 40px)}
.page-content{width:100%;flex-shrink:0}
.greeting-copy{margin-top:calc(var(--frame-height,67px) - var(--footer-space,56px))}
@media(max-width:700px){.home-page > section:not(.greeting-hero){padding-top:30px;padding-bottom:calc(var(--footer-space,25px) + 30px)}}

.experience-title{font-size:clamp(42px,5vw,76px);font-weight:400;line-height:1.05;letter-spacing:-.05em;margin:0 0 60px}
.experience-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4vw}
.experience-entry{border-top:1px solid #1f141140;padding-top:24px}
.experience-entry h2{font-size:clamp(25px,2.5vw,38px);font-weight:400;line-height:1.1;letter-spacing:-.035em;margin:0 0 24px}
.experience-entry p{font-size:clamp(16px,1.35vw,20px);line-height:1.55;margin:0}
@media(max-width:700px){.experience-title{font-size:40px;margin-bottom:30px}.experience-grid{grid-template-columns:1fr;gap:30px}.experience-entry{padding-top:18px}.experience-entry h2{font-size:26px;margin-bottom:14px}.experience-entry p{font-size:16px}}

.story-signoff .back-link{justify-content:flex-end}

/* Keep the complete globe composition within one framed page. */
.globe-section .page-content{display:flex;flex-direction:column;align-items:center}
.globe-section h2{font-size:clamp(38px,6vh,68px);margin:0;line-height:1.02}
.globe-section .travel-globe{width:min(65vw,38svh,370px);height:auto;margin:22px auto}
.globe-section .globe-note{font-size:20px;margin:0}
@media(max-height:650px){.globe-section h2{font-size:36px}.globe-section .travel-globe{width:min(55vw,32svh);margin:12px auto}.globe-section .globe-note{font-size:17px}}

.globe-section{background:var(--ink);color:var(--page)}
.globe-section .travel-globe{stroke:var(--page)}

/* Frame colors switch on the same frame as the page boundary. */
.site-header,.site-header .wordmark,.site-header .header-name,.site-header nav a,.site-header nav span,.social-frame{transition:none}

/* Two matching header surfaces let page boundaries pass through seamlessly. */

/* Story pages occupy only the space inside the persistent frame. */
.home-page > section:not(.greeting-hero){min-height:calc(100svh - var(--frame-height,67px) - var(--footer-space,56px));padding-top:40px;padding-bottom:40px}
@media(max-width:700px){.home-page > section:not(.greeting-hero){padding-top:30px;padding-bottom:30px}}



/* Join the footer surface to the page without a hairline seam. */
.social-frame,footer{border:0;box-shadow:none}

/* Directional theme wipes preserve the actual light and dark brand colors. */


.header-dark-surface{position:absolute;inset:0;display:flex;align-items:center;justify-content:space-between;padding:inherit;background:var(--ink);color:var(--page);pointer-events:none;clip-path:inset(100% 0 0 0)}
.header-dark-surface::after{content:"";position:absolute;left:0;right:0;bottom:0;height:.5px;background:var(--page);opacity:.35}
.header-dark-surface .wordmark,.header-dark-surface .header-name,.header-dark-surface nav a,.header-dark-surface nav span{color:var(--page)}
.header-dark-surface a,.header-dark-surface nav{pointer-events:none}
.social-frame::before{display:none}
.frame-footer-surface{position:fixed;left:0;right:0;bottom:0;height:calc(var(--footer-space,56px) + 2px);background:var(--page);z-index:7;pointer-events:none;border:0;box-shadow:none}
.frame-footer-surface.frame-dark{background:var(--page)}
.frame-footer-dark{position:fixed;left:0;right:0;bottom:0;height:calc(var(--footer-space,56px) + 2px);background:var(--ink);z-index:9;pointer-events:none;clip-path:inset(100% 0 0 0)}
.frame-footer-dark .footer-dark-contacts{position:absolute;bottom:25px;left:3.5vw;color:var(--page);transform:none!important;opacity:1!important;visibility:visible!important;pointer-events:none}

/* Six cells, with each experience paired with its photo in alternating rows. */
.experience-title{font-size:clamp(36px,3.4vw,50px);margin-bottom:26px}
.experience-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:5vw;row-gap:18px;align-items:center}
.experience-entry{border:0;padding:0;max-width:580px}
.experience-entry h2{font-size:clamp(24px,2.3vw,32px);margin-bottom:12px}
.experience-entry p{font-size:16px;line-height:1.45}
.experience-photo{margin:0;height:clamp(150px,19svh,190px);display:flex;align-items:center;justify-content:center}
.experience-photo img{display:block;max-width:100%;width:auto;height:100%;object-fit:contain}
@media(max-width:700px){.experience-grid{grid-template-columns:1fr;gap:22px}.experience-photo{height:280px;margin-bottom:14px}.experience-grid #wics{grid-row:3}.experience-grid .photo-wics{grid-row:4}.experience-title{font-size:36px;margin-bottom:30px}}

/* Equal square photo cells centered beside their matching experience. */
.experience-photo{width:clamp(150px,19svh,190px);height:auto;aspect-ratio:1;justify-self:center}
.experience-photo img{width:100%;height:100%;aspect-ratio:1;object-fit:cover}
.photo-ecmo img{object-position:50% 68%}
.photo-wics img{object-position:50% 75%}
.photo-wells img{object-position:50% 55%}
@media(max-width:700px){.experience-photo{width:min(100%,280px);height:auto;margin-bottom:14px}}

/* Larger paired columns with shared edges and generous spacing. */
.experience-section .page-content{max-width:1120px;margin-inline:auto}
.experience-title{margin-bottom:48px}
.experience-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:64px;row-gap:72px;align-items:start}
.experience-photo{width:100%;max-width:none;height:auto;aspect-ratio:1;justify-self:stretch}
.experience-photo img{width:100%;height:100%;object-fit:cover}
.experience-entry{max-width:none}
.experience-entry h2{font-size:clamp(28px,2.7vw,38px);margin-bottom:20px}
.experience-entry p{font-size:clamp(18px,1.5vw,21px);line-height:1.6}
@media(max-width:700px){.experience-title{margin-bottom:32px}.experience-grid{grid-template-columns:1fr;gap:26px}.experience-photo{width:100%;margin:0 0 24px}.experience-entry h2{font-size:28px;margin-bottom:16px}.experience-entry p{font-size:17px;line-height:1.55}}

/* Compact, balanced experience pairs within one desktop page. */
.experience-section .page-content{max-width:980px}
.experience-title{font-size:clamp(30px,3vw,42px);margin-bottom:24px}
.experience-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:60px;row-gap:20px;align-items:center}
.experience-entry{width:100%}
.experience-entry h2{font-size:clamp(22px,2vw,29px);line-height:1.1;margin-bottom:10px}
.experience-entry p{font-size:clamp(15px,1.15vw,17px);line-height:1.42}
.experience-photo{width:clamp(160px,20svh,200px);height:auto;aspect-ratio:1;justify-self:center}
.experience-section{padding-top:24px!important;padding-bottom:24px!important}
@media(min-width:701px) and (max-height:760px){.experience-section .page-content{max-width:1050px}.experience-title{font-size:30px;margin-bottom:18px}.experience-grid{row-gap:14px;column-gap:44px}.experience-photo{width:clamp(130px,20svh,160px)}.experience-entry h2{font-size:23px;margin-bottom:8px}.experience-entry p{font-size:14px;line-height:1.35}}
@media(max-width:700px){.experience-section .page-content{max-width:520px}.experience-title{font-size:34px;margin-bottom:28px}.experience-grid{grid-template-columns:1fr;gap:22px}.experience-entry h2{font-size:27px;margin-bottom:12px}.experience-entry p{font-size:17px;line-height:1.5}.experience-photo{width:min(100%,300px);margin-bottom:20px}}

.experience-entry p{text-align:justify;text-align-last:left;hyphens:auto}

/* Spacious alternating stories with full photos and a distinct body typeface. */
.experience-section{padding-top:64px!important;padding-bottom:72px!important}
.experience-section .page-content{max-width:1080px}
.experience-title{font-size:clamp(38px,4vw,58px);margin-bottom:56px}
.experience-grid{display:flex;flex-direction:column;gap:72px}
.experience-pair{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:40px;align-items:center}
.experience-pair:nth-child(even){grid-template-columns:minmax(0,1fr) minmax(0,1.5fr)}
.experience-pair:nth-child(even) .experience-photo{grid-column:1;grid-row:1}
.experience-pair:nth-child(even) .experience-entry{grid-column:2;grid-row:1}
.experience-entry h2{font-family:'Times New Roman',Times,serif;font-size:clamp(28px,2.7vw,38px);line-height:1.1;margin-bottom:20px;letter-spacing:-.035em}
.experience-entry p{font-family:Arial,Helvetica,sans-serif;font-size:clamp(16px,1.25vw,18px);line-height:1.65;text-align:left;hyphens:none;letter-spacing:0;max-width:560px}
.experience-photo{width:100%;height:auto;aspect-ratio:auto;margin:0;justify-self:stretch}
.experience-photo img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain}
@media(max-width:700px){.experience-section{padding-top:40px!important;padding-bottom:48px!important}.experience-title{font-size:37px;margin-bottom:36px}.experience-grid{gap:48px}.experience-pair,.experience-pair:nth-child(even){grid-template-columns:1fr;gap:24px}.experience-pair:nth-child(even) .experience-entry,.experience-pair:nth-child(even) .experience-photo{grid-column:auto;grid-row:auto}.experience-entry h2{font-size:29px;margin-bottom:16px}.experience-entry p{font-size:16px;line-height:1.6}.experience-photo{max-width:420px;margin-inline:auto}}

@media(max-width:700px){.experience-grid #wics{grid-row:auto}.experience-grid .photo-wics{grid-row:auto}}

.experience-pair .experience-photo{aspect-ratio:1;overflow:hidden}
.experience-pair .experience-photo img{width:100%;height:100%;aspect-ratio:1;object-fit:cover}
.photo-ecmo img{object-position:50% 68%}
.photo-wics img{object-position:50% 75%}
.photo-wells img{object-position:50% 55%}

/* Reference-inspired editorial typography and shared column alignment. */
@font-face{font-family:'Instrument Serif';font-style:normal;font-weight:400;font-display:swap;src:url('assets/instrument-serif-regular.ttf') format('truetype')}
@font-face{font-family:'Schibsted Grotesk';font-style:normal;font-weight:400;font-display:swap;src:url('assets/schibsted-grotesk-regular.ttf') format('truetype')}
.experience-section .page-content{max-width:1000px}
.experience-title{font-family:'Instrument Serif',Georgia,serif;font-size:clamp(44px,5vw,72px);font-weight:400;line-height:1.02;letter-spacing:-.02em;margin-bottom:56px}
.experience-grid{gap:80px}
.experience-pair,.experience-pair:nth-child(even){grid-template-columns:repeat(2,minmax(0,1fr));gap:56px;align-items:center}
.experience-entry h2{font-family:'Instrument Serif',Georgia,serif;font-weight:400;font-size:clamp(32px,3vw,44px);letter-spacing:-.015em;line-height:1.08;margin-bottom:20px}
.experience-entry p{font-family:'Times New Roman',Times,serif;font-size:18.4px;line-height:1.65;font-weight:400;letter-spacing:0;text-align:left;max-width:62ch;-webkit-font-smoothing:antialiased}
.experience-pair .experience-photo{width:100%;aspect-ratio:1;border-radius:3px;border:1px solid #1f14111c;box-shadow:0 12px 30px #1f14110d}
@media(max-width:700px){.experience-title{font-size:46px;margin-bottom:36px}.experience-grid{gap:48px}.experience-pair,.experience-pair:nth-child(even){grid-template-columns:1fr;gap:24px}.experience-entry h2{font-size:34px;margin-bottom:16px}.experience-entry p{font-size:17px;line-height:1.65}}

/* One experience pair per framed viewport, with a distinct scroll stop. */
.home-page > .experience-section{padding-top:0!important;padding-bottom:0!important}
.experience-grid{gap:0}
.experience-pair{min-height:calc(100svh - var(--frame-height,67px) - var(--footer-space,56px));box-sizing:border-box;padding-block:32px;align-content:center}
.experience-pair:first-child{grid-template-rows:auto 1fr;row-gap:24px}
.experience-pair .experience-title{grid-column:1/-1;margin:0;font-size:clamp(40px,4vw,58px)}
.experience-pair:first-child .experience-entry,.experience-pair:first-child .experience-photo{grid-row:2}
.experience-pair:first-child .experience-entry{grid-column:1}
.experience-pair:first-child .experience-photo{grid-column:2}
@media(max-width:700px){.experience-pair{padding-block:32px;align-content:center;gap:24px}.experience-pair:first-child{grid-template-rows:auto auto auto}.experience-pair:first-child .experience-entry{grid-row:2;grid-column:1}.experience-pair:first-child .experience-photo{grid-row:3;grid-column:1}.experience-pair .experience-title{font-size:40px}}

/* Hold the shared title while the experience rows cycle underneath it. */
.experience-section{clip-path:inset(0)}
.experience-section,.experience-title,.experience-entry h2,.experience-entry p{color:var(--ink)}
.experience-section .experience-title{visibility:hidden}
.experience-section.experience-active .experience-title{visibility:visible}
.experience-section .page-content{position:relative}
.experience-section .experience-title{position:sticky;top:calc(var(--frame-height,67px) + 24px);z-index:4;background:var(--page);padding:0 0 18px;margin:0 0 -78px;font-size:clamp(40px,4vw,58px);line-height:1.05;pointer-events:none}
.experience-pair,.experience-pair:first-child{grid-template-rows:none;row-gap:24px;padding-top:110px;padding-bottom:32px}
.experience-pair:first-child .experience-entry,.experience-pair:first-child .experience-photo{grid-row:auto}
@media(max-width:700px){.experience-section .experience-title{top:calc(var(--frame-height,60px) + 16px);font-size:36px;margin-bottom:-74px;padding-bottom:16px}.experience-pair,.experience-pair:first-child{grid-template-rows:none;padding-top:108px;padding-bottom:32px}.experience-pair:first-child .experience-entry,.experience-pair:first-child .experience-photo{grid-row:auto;grid-column:1}}

/* Keep later frame overlays out of the original NK intro and home spiral. */
.original-home-frame .header-dark-surface,.original-home-frame .frame-footer-surface,.original-home-frame .frame-footer-dark,.intro-playing .header-dark-surface,.intro-playing .frame-footer-surface,.intro-playing .frame-footer-dark{display:none}

/* Real section edges drive both fixed frame surfaces. */
.home-page > section:not(.greeting-hero){min-height:calc(100svh - var(--frame-height,67px))}
.experience-pair{min-height:calc(100svh - var(--frame-height,67px));padding-bottom:calc(var(--footer-space,56px) + 32px)}
 .home-page > .experience-section{display:block}
.experience-section .experience-title{height:100px;box-sizing:border-box;padding-top:24px;top:var(--frame-height,67px);margin-bottom:-100px}
@media(max-width:700px){.experience-section .experience-title{height:80px;padding-top:16px;top:var(--frame-height,60px);margin-bottom:-80px}}
.site-header.frame-dark nav a,.header-dark-surface nav a{opacity:.78}
.site-header.frame-dark nav span,.header-dark-surface nav span{opacity:.65}
.site-header.frame-dark nav a[aria-current],.header-dark-surface nav a[aria-current]{opacity:1}
@media(max-width:700px){
  .site-header{height:86px}
  .site-header .header-name{top:12px}
  .site-header nav{position:absolute;right:5vw;bottom:12px}
}

@font-face{font-family:'Bodoni Moda';font-style:normal;font-weight:400 900;font-display:swap;src:url('assets/bodoni-moda-variable.ttf') format('truetype')}
.site-header .header-name{font-family:'Times New Roman',Times,serif;font-weight:500;font-size:22px;letter-spacing:.08em;text-transform:uppercase}
.greeting-copy{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:6vw;align-items:center;width:100%;padding:0 8vw 0 4vw;margin-top:calc(var(--frame-height,67px) - var(--footer-space,56px));text-align:left}
.greeting-hero h1.greeting-text{font-family:'Instrument Serif',Georgia,serif;font-size:clamp(68px,10.2vw,161.5px);font-weight:400;letter-spacing:-.045em;line-height:1.05;margin:0 0 30px}
.greeting-subtitle{font-family:'Times New Roman',Times,serif;font-size:clamp(16px,1.3vw,21px);line-height:1.5;letter-spacing:0;white-space:normal;color:var(--ink);opacity:.75}
.hero-links{display:flex;gap:32px;margin-top:34px;font-family:'Times New Roman',Times,serif;font-size:16px}
.hero-links a:first-child{border-bottom:1px solid currentColor;padding-bottom:4px}
.hero-links a:last-child{opacity:.65}
.hero-portrait{margin:0;width:100%;max-width:440px;aspect-ratio:4/5;border-radius:30px;overflow:hidden;justify-self:end}
.hero-portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:55% center}
.greeting-scroll{display:none}
.period-character{color:transparent}
.transition-underline{width:clamp(5px,1vw,17px);height:clamp(5px,1vw,17px);margin:0;left:0;border-radius:50%;z-index:13}
.transition-underline span{border-radius:50%}
@media(max-width:700px){
  .greeting-copy{grid-template-columns:1fr;gap:24px;padding:0 5vw;margin-top:calc(var(--frame-height,86px) - 25px)}
  .greeting-hero h1.greeting-text{font-size:clamp(44.2px,13.6vw,85px);margin-bottom:16px}
  .hero-links{gap:22px;font-size:13px;margin-top:18px}
  .greeting-subtitle{font-size:15px}
  .hero-portrait{width:min(65vw,260px);max-height:38svh;justify-self:center;border-radius:22px}
}
@media(prefers-reduced-motion:reduce){.period-character{color:var(--ink)}.transition-underline{display:none}}
html{scrollbar-gutter:stable}

.story-about h2.bio-title{font-family:'Instrument Serif',Georgia,serif;font-weight:400;letter-spacing:-.035em}

.greeting-stage .greeting-scroll{display:block;position:absolute;right:3.5vw;bottom:25px;left:auto;z-index:14;font-size:24px;line-height:1;color:var(--ink)}
.greeting-stage .greeting-scroll span:last-child{font-size:24px}
@media(max-width:700px){.greeting-stage .greeting-scroll{right:5vw;bottom:25px}}

.greeting-stage .greeting-scroll{bottom:40px;width:32px;height:32px;display:grid;place-items:center}
.greeting-scroll svg{display:block}

.greeting-stage .greeting-scroll{bottom:25px;width:15.3px;height:30.6px;line-height:1}
.greeting-stage .greeting-scroll span,.greeting-stage .greeting-scroll span:last-child{font-size:15.3px;line-height:1}
.greeting-scroll svg{width:15.3px;height:15.3px}
.greeting-subtitle{font-family:'Times New Roman',Times,serif;font-size:19.55px;line-height:1.4;letter-spacing:.01em;margin-left:clamp(5px,.8vw,13px)}
@media(max-width:700px){.greeting-subtitle{font-size:16.1px}}

.greeting-subtitle{position:relative}
.tagline-cursor{position:absolute;width:1px;height:1em;margin-top:.15em;background:currentColor;pointer-events:none;visibility:hidden;opacity:0}

.greeting-content{width:min-content;max-width:100%;justify-self:start}
.greeting-subtitle{margin-left:0;text-align:center}

/* Keep the two-column greeting in the compact desktop preview. */
@media(min-width:560px) and (max-width:700px){
  .greeting-copy{grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:6vw;padding:0 8vw 0 4vw;text-align:left}
  .greeting-hero h1.greeting-text{font-size:10.2vw;margin-bottom:22px}
  .greeting-subtitle{font-size:clamp(12px,1.9vw,14px)}
  .hero-portrait{width:100%;max-height:none;justify-self:end}
}

/* Overlay only: original heading metrics and portrait layout stay intact. */
.greeting-text{position:relative}
.manim-greeting{position:absolute;pointer-events:none;line-height:0;visibility:hidden}
.manim-active .typing-character:not(.period-character){color:transparent}
