:root{--earth:#63467A;--earth-dark:#49305E;--ochre:#D6A42C;--rust:#63467A;--ink:#211C28;--muted:#665D6C;--paper:#FCFAFF;--panel:#F1EBF7;--white:#fff;--shadow:0 10px 24px rgba(65,43,79,.06),0 28px 60px rgba(65,43,79,.055)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:120px}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.7 Inter,Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%}::selection{background:#F2D77A}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Poppins,sans-serif;line-height:1.16;letter-spacing:-.035em}em{font-weight:inherit}.container{width:min(1180px,calc(100% - 56px));margin-inline:auto}.nav{position:fixed;top:22px;left:50%;transform:translateX(-50%);z-index:50;max-width:calc(100vw - 24px);padding:6px;border-radius:999px;background:rgba(255,255,255,.96);box-shadow:0 9px 35px rgba(65,43,79,.13);backdrop-filter:blur(14px)}.nav-inner{display:flex;gap:2px;align-items:center}.nav a{font:600 13px/1 Inter,sans-serif;white-space:nowrap;padding:14px 18px;border-radius:999px;transition:background .25s,color .25s,transform .25s}.nav a:hover{background:var(--panel);transform:translateY(-1px)}.nav a.active,.nav a.active:hover{background:var(--earth);color:white}.nav a:focus-visible,.button:focus-visible,.project-card a:focus-visible,.social-links a:focus-visible,.text-link:focus-visible{outline:3px solid var(--ochre);outline-offset:3px}.eyebrow{display:block;font-size:12px;letter-spacing:.17em;font-weight:700;color:var(--earth)}section{padding-block:85px}.section-heading{margin-bottom:42px}.section-heading h2{font-size:clamp(29px,3.2vw,38px);font-weight:700;color:var(--earth);margin:0 0 6px}.section-heading p{font:italic 400 clamp(18px,2vw,25px)/1.5 Poppins,sans-serif;color:#706477;margin:0}.hero{min-height:780px;display:grid;grid-template-columns:1.03fr .97fr;align-items:center;gap:60px;padding-top:145px;padding-bottom:120px}.hero-copy{position:relative;z-index:1}.hero h1{font-size:clamp(44px,5vw,66px);font-weight:600;line-height:1.15;margin:26px 0 8px}.hero h1 em,.contact-page h1 em{color:var(--earth)}.role-line{height:60px;font:italic 500 clamp(24px,3vw,37px)/1.3 Poppins,sans-serif;color:var(--earth);white-space:nowrap}.role-line span:first-child{display:inline-block;transition:opacity .2s,transform .2s}.role-line span.changing{opacity:0;transform:translateY(8px)}.cursor{margin-left:2px;color:var(--ochre);font-style:normal;animation:blink 1s step-end infinite}@keyframes blink{50%{opacity:0}}.hero-copy>p{max-width:520px;margin:22px 0 30px;font-size:18px;color:var(--muted);line-height:1.8}.text-link{color:var(--earth);font-weight:700;display:inline-flex;gap:10px;align-items:center;border-bottom:1.5px solid currentColor;padding-bottom:4px;transition:gap .25s}.text-link:hover{gap:17px}.hero-visual{position:relative;max-width:500px;justify-self:end;width:100%}.portrait-frame{height:505px;border-radius:46% 45% 39% 49% / 39% 42% 45% 46%;overflow:hidden;box-shadow:0 25px 54px rgba(65,43,79,.13);transform:rotate(2deg);transition:transform .35s}.portrait-frame:hover{transform:rotate(0) scale(1.015)}.portrait-frame img{height:100%;width:100%;object-fit:cover;object-position:52% center}.sketch{position:absolute;font:400 90px/1 Poppins,sans-serif;color:var(--earth);pointer-events:none;animation:float 6s ease-in-out infinite}.sketch-a{top:-47px;right:-20px;transform:rotate(-15deg)}.sketch-b{font-size:120px;bottom:15px;left:-70px;color:var(--ochre);animation-delay:-2s}.sketch-c{font-size:145px;top:25%;left:-80px;animation-delay:-3s}.photo-label{position:absolute;right:-15px;bottom:-30px;background:white;padding:14px 23px;border-radius:100px;box-shadow:var(--shadow);font:600 14px Poppins,sans-serif;transform:rotate(-6deg)}.photo-label em{color:var(--rust)}@keyframes float{50%{translate:0 -12px}}.about-section{padding-top:45px}.about-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:80px;align-items:center}.about-copy h3{font-size:clamp(24px,2.5vw,34px);font-weight:600;max-width:610px;margin-bottom:25px}.about-copy h3 em{color:var(--earth)}.about-copy p{max-width:630px;color:var(--muted);font-size:17px;line-height:1.85}.about-copy .text-link{margin-top:13px}.about-photo{height:360px;border-radius:43px;overflow:hidden;transform:rotate(2deg);box-shadow:var(--shadow)}.about-photo img{height:100%;width:100%;object-fit:cover;object-position:center 42%;filter:saturate(.87)}.organization-strip{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-top:70px;padding:25px 30px;border-top:1px solid #E3D9EB;border-bottom:1px solid #E3D9EB;color:#74697A;font:600 15px Poppins,sans-serif}.work-section{padding-top:110px}.category-panel{background:var(--panel);border-radius:35px;padding:48px;margin:30px 0 55px}.panel-title{display:flex;justify-content:space-between;align-items:baseline;gap:24px;margin:0 0 28px}.panel-title h3{font-size:clamp(24px,2.7vw,31px);font-weight:600;margin:0;color:var(--earth)}.panel-title span{font:600 13px Inter;color:#7B6E82}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.project-card{background:white;border-radius:43px;padding:16px;box-shadow:var(--shadow);transition:transform .3s,box-shadow .3s;min-width:0}.project-card:hover{transform:translateY(-7px);box-shadow:0 15px 32px rgba(65,43,79,.08),0 30px 68px rgba(65,43,79,.095)}.card-link{display:block;border-radius:32px;height:100%}.project-art{height:265px;position:relative;overflow:hidden;border-radius:30px;display:grid;place-items:center;background:#EEE8F4;color:var(--earth)}.art-dashboard{background:#E6DDF0}.art-knowledge{background:#F7E5B8}.art-compass{background:#E5DCEF}.art-map{background:#F5EDCC}.art-attune{background:#EDE4F3}.art-testing{background:#F7EFD5}.art-orbit{width:250px;height:250px;border:2px solid currentColor;border-radius:50%;opacity:.2;position:absolute;right:-10%;top:-28%;box-shadow:0 0 0 40px rgba(255,255,255,.25),0 0 0 80px rgba(255,255,255,.16)}.art-card{z-index:1;background:#FFFDF8;width:58%;min-height:142px;border-radius:20px;padding:21px;display:flex;flex-direction:column;box-shadow:0 16px 30px rgba(65,43,79,.12);transform:rotate(-5deg);justify-content:center}.art-knowledge .art-card,.art-map .art-card{transform:rotate(5deg)}.art-overline{text-transform:uppercase;font:700 10px Inter;letter-spacing:.13em;opacity:.65}.art-card strong{font:600 clamp(27px,3vw,43px) Poppins;letter-spacing:-.05em;line-height:1.1;margin:9px 0 2px}.art-caption{font-size:12px;color:var(--muted)}.art-mark{position:absolute;font-size:100px;right:9%;bottom:-38px;color:var(--ochre);opacity:.7}.card-copy{padding:24px 18px 20px}.card-meta{display:flex;justify-content:space-between;gap:14px;color:#766C7B;font-size:12px;font-weight:600}.card-copy h3{font-size:25px;margin:14px 0 8px;letter-spacing:-.035em}.card-copy h3 em{font-style:italic;font-weight:600}.card-copy p{font-size:14px;color:var(--muted);line-height:1.7;margin:0}.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.tags span{background:var(--earth);color:white;border-radius:99px;padding:6px 11px;font-size:11px;font-weight:600;line-height:1.35}.card-cta{display:flex;justify-content:space-between;color:var(--earth);font-size:13px;font-weight:700;margin-top:20px}.button{display:inline-flex;align-items:center;gap:18px;border-radius:99px;background:var(--earth);color:white;padding:12px 23px;font-size:14px;font-weight:700;transition:background .2s,transform .2s}.button:hover{background:var(--earth-dark);transform:translateY(-2px)}.panel-more{float:right;margin-top:28px}.category-panel:after{content:'';display:block;clear:both}.ongoing-section{padding-top:35px}.experience-grid{display:grid;grid-template-columns:32% 1fr;gap:70px}.experience-intro p{font-size:17px;color:var(--muted);line-height:1.8;margin-bottom:25px}.experience-list{display:grid;gap:13px}.experience-row{display:grid;grid-template-columns:1.3fr 1fr auto;align-items:center;gap:22px;border-radius:20px;background:var(--earth);color:white;padding:24px 27px;font-size:13px}.experience-row strong{font:600 16px/1.4 Poppins,sans-serif}.experience-row span{opacity:.9}.experience-row time{white-space:nowrap;opacity:.83}.toolkit-intro{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center;margin-bottom:40px}.toolkit-intro>p{font-size:17px;color:var(--muted);line-height:1.8}.editorial-quote{padding:36px 38px;border-radius:35px;background:var(--panel);position:relative}.editorial-quote p{font:italic 500 23px/1.5 Poppins,sans-serif;color:var(--earth);margin:0}.quote-mark{font:600 90px/1 Georgia;color:var(--ochre);display:block;height:50px}.methods-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:23px}.method-tile{padding:15px 15px 25px}.method-visual{height:150px;border-radius:26px;background:var(--panel);display:flex;justify-content:space-between;align-items:center;padding:26px;color:var(--earth);font:600 48px Poppins}.method-visual span:last-child{color:var(--ochre);font-size:60px}.method-tile h3{font-size:20px;margin:17px 0 5px}.method-tile p{font-size:14px;line-height:1.7;color:var(--muted)}.skill-groups{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.skill-group{background:var(--panel);border-radius:30px;padding:30px}.skill-group h3{font-size:20px;color:var(--earth);margin-bottom:20px}.skill-items{display:flex;flex-wrap:wrap;gap:10px}.skill-items span{display:inline-flex;align-items:center;gap:10px;border-radius:999px;background:white;padding:10px 14px;font-size:14px;font-weight:600}.skill-items i{display:block;background:var(--dot);height:11px;width:11px;border-radius:4px;transform:rotate(-15deg)}.contact-teaser{padding-bottom:130px}.social-links{display:flex;flex-wrap:wrap;gap:12px}.social-links a{display:inline-flex;align-items:center;gap:12px;padding:14px 23px;border-radius:99px;background:white;box-shadow:var(--shadow);font-weight:700;color:var(--earth);transition:transform .2s}.social-links a:hover{transform:translateY(-3px)}.social-links a span{font-size:20px;line-height:1}footer{width:min(1180px,calc(100% - 56px));margin:auto;padding:28px 0 35px;border-top:1px solid #E3D9EB;display:flex;justify-content:space-between;gap:20px;color:#766C7B;font-size:13px}.page-main{padding-top:165px;padding-bottom:100px}.gallery-intro{margin-bottom:80px}.gallery-intro h1{font-size:clamp(52px,6vw,78px);margin:18px 0}.gallery-intro p{font-size:20px;color:var(--muted);max-width:630px}.coral-dot{color:var(--ochre)}.gallery-note{color:var(--muted);font-style:italic}.contact-page{min-height:calc(100vh - 80px);display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:80px;padding-top:140px;padding-bottom:90px}.contact-page h1{font-size:clamp(52px,6vw,84px);color:var(--earth);margin:22px 0}.contact-copy p{font:italic 400 23px/1.6 Poppins,sans-serif;color:var(--muted);max-width:560px;margin-bottom:35px}.contact-photo{height:535px;border-radius:48% 41% 43% 37% / 38% 46% 39% 43%;overflow:hidden;box-shadow:var(--shadow)}.contact-photo img{width:100%;height:100%;object-fit:cover}.case-page{padding-top:145px;padding-bottom:110px}.back-link{font-size:14px;font-weight:700;color:var(--earth)}.back-link:hover{text-decoration:underline}.case-hero{display:grid;grid-template-columns:1fr .85fr;gap:60px;align-items:center;padding:55px 0 65px}.case-title h1{font-size:clamp(40px,4.7vw,64px);margin:20px 0 8px}.client{color:var(--earth);font-weight:700}.case-summary{font:italic 400 23px/1.5 Poppins,sans-serif;color:var(--muted);margin:24px 0}.outline-tags{display:flex;gap:9px;flex-wrap:wrap}.outline-tags span{border:1px solid var(--earth);color:var(--earth);border-radius:99px;padding:8px 14px;font-weight:600;font-size:13px}.case-art .project-art{height:390px;border-radius:44px}.case-art .art-card{width:65%;min-height:200px}.case-art .art-card strong{font-size:52px}.metadata-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.metadata-card{background:white;box-shadow:var(--shadow);border-radius:25px;padding:27px;display:flex;flex-direction:column;gap:10px}.metadata-card span{font-size:13px;font-weight:700;color:var(--earth)}.metadata-card strong{font:600 16px/1.5 Poppins,sans-serif}.metadata-card:last-child{grid-column:1/-1}.nda-note{background:var(--panel);border-radius:18px;padding:16px 22px;color:var(--earth);font-size:14px;margin:28px 0}.case-sections{margin:70px auto 60px;max-width:900px}.case-section{display:grid;grid-template-columns:150px 1fr;gap:25px;padding:50px 0;border-top:1px solid #E3D9EB}.case-index{font:700 13px Poppins;color:var(--ochre)}.case-section h2{font-size:clamp(27px,3vw,36px);color:var(--earth);margin-bottom:15px}.case-section p{font-size:18px;color:var(--muted);line-height:1.85}.case-callout{grid-column:2;background:var(--panel);border-radius:25px;padding:27px;display:flex;flex-direction:column;gap:10px;color:var(--earth)}.case-callout span{font-size:12px;letter-spacing:.13em;font-weight:700}.case-callout strong{font:italic 600 20px Poppins}.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:translateY(0)}
@media(max-width:900px){.hero{grid-template-columns:1fr 1fr;gap:20px;min-height:680px}.portrait-frame{height:400px}.sketch{font-size:65px}.sketch-b{font-size:80px;left:-35px}.sketch-c{font-size:100px;left:-40px}.experience-grid{gap:30px}.experience-row{grid-template-columns:1fr auto}.experience-row span{grid-column:1}.experience-row time{grid-column:2;grid-row:1/3}.about-grid{gap:40px}.category-panel{padding:32px}.card-copy h3{font-size:21px}.project-art{height:210px}}
@media(max-width:680px){html{scroll-padding-top:90px}.container,footer{width:min(100% - 32px,1180px)}.nav{top:10px;left:8px;right:8px;transform:none;max-width:none;padding:5px}.nav-inner{display:grid;grid-template-columns:repeat(3,1fr);gap:3px}.nav a{padding:9px 4px;text-align:center;font-size:12px}.hero{padding-top:150px;padding-bottom:65px;min-height:0;grid-template-columns:1fr;gap:40px}.hero h1{font-size:clamp(40px,10vw,55px)}.role-line{font-size:24px;height:42px}.hero-copy>p{font-size:16px}.hero-visual{max-width:420px;justify-self:center;width:85%}.portrait-frame{height:330px}.sketch-a{right:-25px;top:-25px}.sketch-b{left:-28px}.sketch-c{left:-35px}.photo-label{right:-20px;font-size:12px}section{padding-block:60px}.about-grid,.toolkit-intro,.experience-grid,.skill-groups,.contact-page,.case-hero{grid-template-columns:1fr}.about-photo{height:300px;max-width:430px}.organization-strip{justify-content:flex-start;gap:12px 22px;margin-top:42px;padding:22px 0;font-size:13px}.category-panel{padding:22px;border-radius:28px;margin:20px 0 35px}.project-grid,.methods-grid{grid-template-columns:1fr}.project-card{border-radius:28px}.project-art{height:225px;border-radius:20px}.panel-title h3{font-size:23px}.panel-title span{font-size:11px}.card-copy{padding:19px 10px 15px}.experience-row{padding:19px 17px}.toolkit-intro{gap:15px}.method-tile{padding:0 0 12px}.method-visual{height:115px}.skill-group{padding:23px}.contact-teaser{padding-bottom:75px}footer{display:block;font-size:12px}footer span{display:block}.page-main{padding-top:145px}.gallery-intro{margin-bottom:45px}.contact-page{gap:35px;padding-top:150px}.contact-photo{height:350px;max-width:450px;width:100%}.contact-copy p{font-size:19px}.case-page{padding-top:130px}.case-hero{gap:25px;padding:35px 0}.case-art .project-art{height:265px}.metadata-grid{grid-template-columns:1fr 1fr}.metadata-card{padding:19px}.metadata-card:nth-child(3){grid-column:1/-1}.case-section{grid-template-columns:1fr;gap:5px;padding:36px 0}.case-callout{grid-column:1}.case-section p{font-size:16px}}
@media(max-width:390px){.nav a{font-size:11px}.hero-visual{width:90%}.role-line{font-size:21px}.metadata-grid{grid-template-columns:1fr}.metadata-card:nth-child(3){grid-column:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

/* Delta blue and red inspired scrapbook */
:root{
  --earth:#123B67;
  --earth-dark:#082B4E;
  --ochre:#B3263E;
  --rust:#C92D48;
  --ink:#1F2B38;
  --muted:#586674;
  --paper:#FFFFFF;
  --panel:#EEF4FA;
  --white:#FFFFFF;
  --shadow:0 10px 24px rgba(14,55,100,.08),0 28px 60px rgba(14,55,100,.07)
}
::selection{background:#DCEBF8;color:#1F2B38}
.nav{background:rgba(255,255,255,.97);box-shadow:0 9px 35px rgba(14,55,100,.15)}
.nav a.active,.nav a.active:hover{background:#123B67;color:#FFFFFF}
.nav a:hover{background:#EEF4FA}
.section-heading p{color:#627080}
.hero h1 em,.contact-page h1 em,.about-copy h3 em{color:#123B67}
.role-line,.section-heading h2,.panel-title h3{color:#123B67}
.eyebrow,.text-link,.back-link,.client{color:#123B67}
.portrait-frame{box-shadow:0 25px 54px rgba(14,55,100,.15)}
.organization-strip,footer,.case-section{border-color:#D8E5F1}
.organization-strip,.panel-title span,.card-meta,footer{color:#647281}
.project-card,.metadata-card,.skill-items span,.social-links a{background:#FFFFFF}
.project-art{background:#DFECF8}
.art-dashboard{background:#D1E3F5}
.art-knowledge{background:#EAF1F8}
.art-compass{background:#DDEBF8}
.art-map{background:#E6EEF8}
.art-attune{background:#D8E8F6}
.art-testing{background:#E9F0F8}
.art-card{background:#FFFFFF;box-shadow:0 16px 30px rgba(14,55,100,.16)}
.sketch,.sketch-b,.method-visual span:last-child,.art-mark{color:#C92D48}
.photo-label em,.case-index,.coral-dot{color:#B3263E}
.tags span,.experience-row,.button{background:#123B67;color:#FFFFFF}
.button:hover{background:#082B4E}
.nda-note,.editorial-quote,.method-visual,.skill-group{background:#EEF4FA}
.skill-items span:nth-child(4n+1) i{background:#123B67}
.skill-items span:nth-child(4n+2) i{background:#C92D48}
.skill-items span:nth-child(4n+3) i{background:#88A9C8}
.skill-items span:nth-child(4n) i{background:#9E2841}

/* Paper scraps, stamps, and small handwritten marks. */
.section-heading{position:relative;width:max-content;max-width:100%}
.section-heading:after{content:'✳';position:absolute;top:-18px;right:-35px;color:#C92D48;font:400 30px/1 Poppins,sans-serif;transform:rotate(-18deg)}
.panel-title h3{text-decoration:underline wavy #C92D48 1.5px;text-underline-offset:9px}
.category-panel{position:relative;background:#F5F9FD;border:1px dashed #C7D8E9;overflow:visible}
.category-panel:before{content:'✳';position:absolute;right:25px;top:-26px;font-size:39px;line-height:1;color:#C92D48;transform:rotate(17deg)}
.project-grid{gap:31px;padding:15px 15px 25px;align-items:start}
.project-card{--tilt:-2deg;position:relative;isolation:isolate;padding:13px;border-radius:10px;transform:rotate(var(--tilt));box-shadow:0 14px 35px rgba(79,39,46,.15);transition:transform .32s ease,box-shadow .32s ease;overflow:visible}
.project-card.reveal.visible{transform:rotate(var(--tilt))}
.project-card:nth-child(even),.project-knowledge,.project-testing{--tilt:2deg;margin-top:25px}
.project-compass,.project-attune{--tilt:1.5deg}
.project-map{--tilt:-1.5deg}
.project-card:before{content:'';position:absolute;z-index:4;top:-13px;left:35%;width:85px;height:25px;background:rgba(229,191,168,.67);transform:rotate(-6deg);box-shadow:0 1px 1px rgba(94,50,43,.08);pointer-events:none}
.project-card:nth-child(even):before{left:52%;transform:rotate(8deg)}
.project-card:after{content:'✳';position:absolute;z-index:3;right:-15px;top:25px;color:#C92D48;font:400 37px/1 Poppins,sans-serif;transform:rotate(-20deg);pointer-events:none}
.project-card:hover,.project-card.reveal.visible:hover,.project-card:focus-within,.project-card.reveal.visible:focus-within{z-index:10;transform:rotate(0) scale(1.045);box-shadow:0 23px 52px rgba(14,55,100,.23)}
.card-link{border-radius:5px;outline-offset:7px}
.project-card .project-art{border-radius:5px;height:270px}
.project-card .art-card{transform:rotate(-7deg);border-radius:8px}
.project-card:nth-child(even) .art-card{transform:rotate(6deg)}
.project-card .art-mark{opacity:.8}
.scrap-label{position:absolute;z-index:3;left:-13px;top:28px;background:#B3263E;color:#FFFFFF;transform:rotate(-7deg);padding:5px 13px;font:700 11px/1.5 Inter,sans-serif;letter-spacing:.1em;box-shadow:2px 3px 0 rgba(94,25,44,.13)}
.scrap-peek{position:absolute;z-index:5;left:15px;right:15px;bottom:15px;background:rgba(255,253,251,.97);border-left:4px solid #123B67;padding:14px 17px;box-shadow:0 8px 24px rgba(68,29,40,.15);text-align:left;opacity:0;transform:translateY(115%);transition:opacity .25s,transform .25s;pointer-events:none}
.scrap-peek span{font:700 10px Inter,sans-serif;letter-spacing:.14em;color:#B3263E}
.scrap-peek p{font:500 14px/1.55 Inter,sans-serif;color:#1F2B38;margin:7px 0}
.scrap-peek strong{font:700 12px Inter,sans-serif;color:#B3263E}
.project-card:hover .scrap-peek,.project-card:focus-within .scrap-peek{opacity:1;transform:translateY(0)}
.project-card .card-copy{padding:23px 17px 18px}
.project-card .card-copy h3{color:#1F2B38}
.project-card .tags span{background:#FCE6EA;color:#9B1F39;font-size:12px}
.project-card .card-cta{color:#123B67;border-top:1px dashed #CBD9E8;padding-top:15px}
.ongoing-section .project-card{max-width:590px}
.ongoing-section .scrap-label{background:#123B67}
.case-art{transform:rotate(2deg)}
.case-art .project-art{border:12px solid white;box-shadow:var(--shadow)}
.metadata-card:nth-child(odd){transform:rotate(-1deg)}
.metadata-card:nth-child(even){transform:rotate(1deg)}
@media(max-width:900px){.project-grid{gap:22px}.project-card .project-art{height:220px}}
@media(max-width:680px){.project-grid{padding:8px 7px 20px;gap:30px}.project-card,.project-card.reveal.visible,.project-card:nth-child(even){transform:rotate(0);margin-top:0}.project-card:hover,.project-card.reveal.visible:hover,.project-card:focus-within,.project-card.reveal.visible:focus-within{transform:scale(1.01)}.project-card .project-art{height:225px}.scrap-peek{display:none}.section-heading:after{right:-22px;font-size:22px}.metadata-card{transform:none!important}}
@media(hover:none){.project-card:hover,.project-card.reveal.visible:hover{transform:none}.scrap-peek{display:none}}
@media(prefers-reduced-motion:reduce){.project-card,.project-card.reveal.visible,.project-card:hover,.project-card.reveal.visible:hover,.project-card:focus-within,.project-card.reveal.visible:focus-within{transform:none;transition:none}.scrap-peek{transition:none}}

/* Freehand notes: a loose, personal trail through design, research, and code. */
.hero-visual,.about-section,.work-section,.ongoing-section,.experience-section,.toolkit-section,.skills-section,.contact-teaser,.gallery-intro,.contact-copy,.case-hero{position:relative}
.doodle{position:absolute;display:block;width:70px;aspect-ratio:1;pointer-events:none;user-select:none;z-index:2;background:#123B67;-webkit-mask:var(--doodle) center/contain no-repeat;mask:var(--doodle) center/contain no-repeat;opacity:.9;transform:rotate(var(--tilt,0deg));filter:none}
.doodle:nth-of-type(even){background:#C92D48}
.doodle-hero-idea{width:91px;right:-30px;top:-36px;--tilt:13deg}
.doodle-hero-cursor{width:58px;left:-44px;bottom:54px;--tilt:-16deg;background:#C92D48}
.doodle-about-board{width:80px;right:16px;top:6px;--tilt:-10deg}
.doodle-about-chip{width:53px;left:48%;bottom:36px;--tilt:17deg;background:#C92D48}
.doodle-work-puzzle{width:77px;right:20px;top:58px;--tilt:13deg;background:#C92D48}
.doodle-work-layout{width:55px;left:-18px;top:430px;--tilt:-11deg}
.doodle-ongoing-flow{width:69px;right:15px;top:27px;--tilt:-9deg}
.doodle-experience-terminal{width:55px;left:23%;bottom:30px;--tilt:13deg;background:#C92D48}
.doodle-toolkit-chat{width:78px;right:17px;top:70px;--tilt:-12deg}
.doodle-toolkit-pencil{width:54px;left:-16px;top:52%;--tilt:22deg;background:#C92D48}
.doodle-skills-palette{width:72px;right:15px;top:77px;--tilt:12deg;background:#C92D48}
.doodle-skills-responsive{width:52px;left:38%;bottom:20px;--tilt:-13deg}
.doodle-teaser-plane{width:65px;right:14%;top:78px;--tilt:18deg;background:#C92D48}
.doodle-gallery-pen{width:78px;right:36px;top:0;--tilt:16deg}
.doodle-gallery-team{width:51px;right:170px;bottom:-33px;--tilt:-12deg;background:#C92D48}
.doodle-contact-plane{width:76px;right:20px;top:7px;--tilt:16deg;background:#C92D48}
.doodle-contact-smile{width:55px;left:3%;bottom:-45px;--tilt:-9deg}
.doodle-case{width:68px;right:2%;top:-12px;--tilt:12deg;background:#C92D48}
footer a{text-decoration:underline;text-underline-offset:3px;color:#123B67}
@media(max-width:900px){.doodle{width:57px}.doodle-hero-idea{width:75px;right:-13px}.doodle-about-chip,.doodle-work-layout,.doodle-experience-terminal,.doodle-toolkit-pencil,.doodle-skills-responsive,.doodle-gallery-team,.doodle-contact-smile{display:none}}
@media(max-width:680px){.doodle{width:46px;opacity:.8}.doodle-hero-idea{width:60px;right:1px;top:-25px}.doodle-hero-cursor{display:none}.doodle-about-board,.doodle-work-puzzle,.doodle-ongoing-flow,.doodle-toolkit-chat,.doodle-skills-palette{right:2px;top:9px;width:44px}.doodle-teaser-plane{right:8px;top:52px}.doodle-gallery-pen{right:4px;top:5px;width:50px}.doodle-contact-plane{right:0;top:-20px;width:52px}.doodle-case{display:none}.about-section .section-heading,.work-section .section-heading,.ongoing-section .section-heading,.toolkit-section .section-heading,.skills-section .section-heading{max-width:calc(100% - 55px)}}

/* Hero introduction: let the changing roles lead. */
.hero-copy .eyebrow{font-size:13px;letter-spacing:.13em}
.hero-copy .role-line{white-space:normal;height:auto;min-height:60px}
.hero-copy .text-link{margin-top:27px}
@media(max-width:680px){.hero-copy .eyebrow{font-size:12px;line-height:1.5}.hero-copy .role-line{min-height:58px;font-size:clamp(20px,5vw,24px)}.hero-copy .text-link{margin-top:18px}}

/* Original organization marks, with clear space and proportional scaling. */
.organization-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;padding:30px 0}
.organization-logo{display:flex;align-items:center;justify-content:center;background:#fff;border-radius:10px;padding:16px;min-width:0}
.organization-logo img{width:100%;max-width:200px;height:64px;object-fit:contain;filter:none}
.organization-logo:focus-visible{outline:3px solid var(--ochre);outline-offset:4px}
.experience-organization{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0}
.experience-organization .organization-logo{padding:10px 12px;flex:1;min-width:100px;max-width:160px}
.experience-organization .organization-logo img{height:40px;max-width:136px}
.experience-organization>span{width:100%;font-size:14px;line-height:1.5}
@media(max-width:900px){.experience-organization{grid-column:1}.experience-row time{grid-column:2;grid-row:1/3}}
@media(max-width:680px){.organization-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.organization-logo{padding:14px}.organization-logo img{height:52px}.experience-organization .organization-logo img{height:36px}}

.about-photo{height:auto;aspect-ratio:4/5;width:100%;max-width:430px;justify-self:center}.about-photo img{width:100%;height:100%;object-fit:cover;object-position:center;filter:none}

.project-tools{font-size:14px;line-height:1.6;color:var(--muted);margin:0 0 16px}.project-tools strong{color:var(--ink);font-weight:600}

.health-dashboard{position:absolute;inset:30px 18px 20px;background:white;border:1px solid #D3DFEB;border-radius:12px;box-shadow:0 12px 28px #123b6718;padding:15px;transform:rotate(-2deg)}
.health-dashboard-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid #E8EEF5}
.health-dashboard-header img{width:80px;height:auto}.health-dashboard-header span{font:600 14px Inter;color:#123B67}
.health-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:12px}.health-column h4{font:600 14px/1.4 Inter;color:#123B67;margin:0 0 10px;letter-spacing:0}
.health-mini-cards{display:grid;grid-template-columns:1fr 1fr;gap:7px}.health-mini-card{background:#F0F5FA;border:1px solid #E2EAF2;border-radius:6px;padding:9px;animation:health-card-in 6s ease both infinite}
.health-mini-card:nth-child(2){animation-delay:.2s}.health-column:nth-child(2) .health-mini-card{animation-delay:.4s}
.health-mini-card i,.health-mini-card b,.health-mini-card small{display:block;border-radius:2px;background:#CBD9E7;height:4px;width:65%;margin-bottom:7px}.health-mini-card b{height:10px;width:45%;background:#123B67}.health-mini-card small{width:85%;margin:0;background:#A9BED3}
.health-chart{height:68px;margin-top:10px;border-bottom:1px solid #D9E4EF;overflow:hidden}.health-bars{height:100%;display:flex;align-items:flex-end;gap:9px;padding:4px 8px 0}.health-bars i{height:var(--bar-height);flex:1;background:#123B67;border-radius:3px 3px 0 0;transform-origin:bottom;animation:health-bars-in 6s ease both infinite}.health-bars i:nth-child(even){background:#B3263E;animation-delay:.15s}
.health-chart svg{width:100%;height:100%;overflow:visible}.health-chart-grid{stroke:#E2EAF2;stroke-width:1;fill:none}.health-chart-line{fill:none;stroke:#B3263E;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;animation:health-line-in 6s ease both infinite}
@keyframes health-card-in{0%,8%{opacity:0;transform:translateY(8px)}20%,90%,100%{opacity:1;transform:translateY(0)}}
@keyframes health-bars-in{0%,20%{transform:scaleY(.12)}45%,100%{transform:scaleY(1)}}
@keyframes health-line-in{0%,25%{stroke-dashoffset:1}55%,100%{stroke-dashoffset:0}}
@media(max-width:900px){.health-dashboard{inset:24px 10px 12px;padding:12px}.health-column h4{font-size:12px}.health-chart{height:50px}.health-columns{gap:10px}.health-dashboard-header span{font-size:12px}}
@media(hover:none),(prefers-reduced-motion:reduce){.health-mini-card,.health-bars i,.health-chart-line{animation:none;opacity:1;transform:none;stroke-dashoffset:0}}

.experience-entry{border-bottom:1px solid #ded8e7;padding:22px 0}.experience-entry:first-child{border-top:1px solid #ded8e7}.experience-entry summary{display:grid;grid-template-columns:minmax(0,1fr) auto 20px;gap:18px;align-items:start;cursor:pointer;list-style:none}.experience-entry summary::-webkit-details-marker{display:none}.experience-entry summary strong{display:block;font-size:17px;line-height:1.45;color:var(--ink)}.experience-entry .experience-organization{margin-top:9px;font-size:14px;color:var(--muted)}.experience-entry time{font-size:13px;white-space:nowrap;color:var(--muted);padding-top:4px}.experience-expand{font-size:22px;color:var(--earth);line-height:1.3}.experience-entry[open] .experience-expand{transform:rotate(45deg)}.experience-description{padding-top:18px;font-size:15px;line-height:1.7}.experience-description>span{font-size:12px;color:var(--muted)}.experience-description p{margin:9px 0 0}.experience-hint{font-size:13px!important;margin-top:24px;color:var(--muted)}.experience-entry summary:focus-visible{outline:3px solid var(--ochre);outline-offset:6px}@media(max-width:900px){.experience-entry summary{grid-template-columns:1fr 20px}.experience-entry time{grid-column:1;grid-row:2}.experience-expand{grid-column:2;grid-row:1}.experience-entry .experience-organization{grid-column:auto}}

.experience-simple{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:start}.experience-simple strong{display:block;font-size:17px;line-height:1.45;color:var(--ink)}@media(max-width:900px){.experience-simple{grid-template-columns:1fr;gap:8px}.experience-simple time{grid-column:auto;grid-row:auto}}

.experience-grid{grid-template-columns:300px minmax(0,1fr)}.experience-timeline{min-width:0}.experience-timeline-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;color:var(--muted);font-size:13px}.experience-timeline-controls>div{display:flex;gap:10px}.experience-timeline-controls button{width:44px;height:44px;border:1px solid #d7cddd;border-radius:50%;background:white;color:var(--earth);font-size:23px;cursor:pointer}.experience-timeline-controls button:disabled{opacity:.3;cursor:default}.experience-track{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#d4c8df transparent;padding-bottom:18px}.experience-milestone{flex:0 0 calc((100% - 24px)/2);scroll-snap-align:start;min-width:0}.experience-milestone time{display:block;font-size:13px;color:var(--muted);margin-bottom:18px}.timeline-dot{display:block;position:relative;height:18px;border-top:2px solid #d8cde2;margin-right:-24px;margin-bottom:20px}.timeline-dot:before{content:'';position:absolute;top:-7px;left:0;width:12px;height:12px;border-radius:50%;background:var(--earth);box-shadow:0 0 0 5px var(--paper)}.experience-milestone:last-child .timeline-dot{margin-right:0}.experience-milestone strong{display:block;font-size:19px;line-height:1.4;min-height:80px}.experience-milestone .experience-organization{margin-top:18px;font-size:14px}.experience-track:focus-visible,.experience-timeline-controls button:focus-visible{outline:3px solid var(--ochre);outline-offset:3px}@media(max-width:900px){.experience-grid{grid-template-columns:1fr}.experience-milestone{flex-basis:calc((100% - 24px)/2)}}@media(max-width:600px){.experience-milestone{flex-basis:86%}}

.experience-milestone .organization-logo img[src$="ntu.png"]{width:110px;height:64px;object-fit:contain}.experience-milestone .organization-logo img[src$="hpe.png"]{width:90px;height:48px;object-fit:contain}.experience-milestone .experience-organization{flex-wrap:wrap;gap:10px}

/* Consistent organization alignment within the experience timeline. */
.experience-milestone .experience-organization{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;align-items:start;margin-top:16px}
.experience-milestone .experience-organization .organization-logo{box-sizing:border-box;display:flex;justify-content:flex-start;align-items:center;width:100%;max-width:none;min-width:0;height:76px;padding:8px 0;background:transparent;border-radius:0}
.experience-milestone .experience-organization .organization-logo img{display:block;width:auto;max-width:min(180px,100%);height:auto;max-height:56px;object-fit:contain;object-position:left center}
.experience-milestone .experience-organization .organization-logo img[src$="ntu.png"]{width:auto;height:auto;max-width:150px;max-height:60px}
.experience-milestone .experience-organization .organization-logo img[src$="hpe.png"]{width:auto;height:auto;max-width:100px;max-height:54px}
.experience-milestone .experience-organization>span{display:block;width:auto;min-width:0;margin:0;line-height:1.5}

.experience-section .experience-grid{grid-template-columns:minmax(0,1fr);gap:24px}.experience-resume{justify-self:start}

/* Research, analytics, and building presented as three complementary perspectives. */
.informed-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.informed-card{overflow:hidden;border:1px solid #e2d8ea;background:white;border-radius:24px;min-width:0}.informed-visual{background:#f1ebf7;padding:16px 12px;border-bottom:1px solid #e2d8ea}.informed-visual svg{display:block;width:100%;height:auto;fill:none;stroke:#123B67;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.informed-visual text{font:11px Inter,Arial,sans-serif;fill:#665D6C;stroke:none}.informed-visual .iv-paper{fill:#fff;stroke:#b6a4c6}.informed-visual .iv-note{fill:#f5eff9;stroke:#b6a4c6}.informed-visual .iv-dashed{stroke-dasharray:4 6;stroke:#b6a4c6}.informed-visual .iv-dot{fill:#fff;stroke:#63467A}.informed-visual .iv-accent{fill:#C92D48;stroke:#C92D48}.informed-visual .iv-bar{fill:#63467A;stroke:none}.informed-visual .iv-highlight{fill:#C92D48;stroke:none}.informed-visual .iv-ring{fill:#fff;stroke:#C92D48}.informed-copy{padding:26px 24px}.informed-copy .eyebrow{font-size:10px;letter-spacing:.12em}.informed-copy h3{font-size:22px;line-height:1.25;margin:14px 0 12px}.informed-copy p{font-size:15px;color:var(--muted);line-height:1.75;margin:0 0 24px}.informed-methods{border-top:1px solid #eee6f3;padding-top:16px;font-size:12px;line-height:1.8;color:var(--earth)}.informed-caption{margin:18px 0 0;font-size:12px;color:var(--muted)}
@media(max-width:900px){.informed-grid{gap:16px}.informed-copy{padding:22px 18px}.informed-copy h3{font-size:20px}}
@media(max-width:680px){.informed-grid{grid-template-columns:1fr}.informed-visual{padding:16px 30px}.informed-visual svg{max-width:340px;margin:auto}.informed-copy{padding:24px}}

/* Books and perspective cards use the established navy/red/white treatment. */
.informed-section .section-heading h2,.informed-section .informed-copy .eyebrow,.informed-section .informed-methods{color:#123B67}.informed-section .section-heading p{color:#566476}
.informed-card{border-color:#dce3eb}.informed-visual{background:#f3f6fa;border-color:#dce3eb}.informed-visual .iv-paper{fill:#fff;stroke:#aebccd}.informed-visual .iv-note{fill:#f3f6fa;stroke:#aebccd}.informed-visual .iv-dashed{stroke:#aebccd}.informed-visual .iv-dot{stroke:#123B67}.informed-visual .iv-bar{fill:#123B67}.informed-methods{border-color:#dce3eb}.informed-copy h3{color:#123B67}.informed-copy p{color:#566476}
.learning-books{margin-top:32px;padding-top:24px;border-top:1px solid #dce3eb;display:flex;align-items:center;gap:32px}.learning-books h3{font-size:18px;color:#123B67;margin:0;white-space:nowrap}.book-covers{display:flex;align-items:flex-end;gap:24px;flex-wrap:wrap}.book-covers img{height:142px;width:auto;max-width:110px;object-fit:contain;box-shadow:0 5px 13px rgba(18,59,103,.12)}
@media(max-width:680px){.learning-books{display:block}.learning-books h3{margin-bottom:20px}.book-covers{gap:18px}.book-covers img{height:120px;max-width:90px}}

/* Four toolkit cards: primary tools first, remaining capabilities in quiet rows. */
.skills-section .section-heading h2{color:#123B67}.skills-section .section-heading p{color:#566476}
.skill-groups{gap:24px}.skill-toolkit-card{background:#fff;border:1px solid #dce3eb;border-radius:22px;padding:30px;position:relative;box-shadow:0 6px 22px rgba(18,59,103,.04)}
.skill-card-heading{display:flex;align-items:center;gap:14px;margin-bottom:25px}.skill-card-heading h3{color:#123B67;margin:0;font-size:22px}.skill-card-icon{display:grid;place-items:center;flex:0 0 44px;height:44px;border-radius:12px;background:#f3f6fa;color:#C92D48}.skill-card-icon svg{width:28px;height:28px}
.skill-featured-tools{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:22px}.skill-featured-tools span{display:block;padding:9px 14px;border-radius:10px;background:#123B67;color:white;font-size:15px;font-weight:600;line-height:1.45}
.skill-supporting-tools{list-style:none;padding:18px 0 0;margin:0;border-top:1px solid #e3e9ef;display:flex;flex-wrap:wrap;column-gap:20px;row-gap:10px}.skill-supporting-tools li{font-size:14px;color:#566476;line-height:1.65;max-width:100%}
@media(max-width:680px){.skill-groups{grid-template-columns:1fr}.skill-toolkit-card{padding:24px}.skill-card-heading h3{font-size:20px}.skill-featured-tools span{font-size:14px}}

.skill-all-tools{border-top:0;padding-top:0;column-gap:22px;row-gap:12px}.skill-all-tools li{font-size:15px;font-weight:400;color:#566476}

.book-covers img{height:180px;max-width:140px}@media(max-width:680px){.book-covers img{height:150px;max-width:112px}}

.doodle-hero-board{width:68px;right:-12px;bottom:66px;--tilt:10deg;background:#123B67}@media(max-width:900px){.doodle-hero-board{width:58px;right:0;bottom:55px}}@media(max-width:680px){.doodle-hero-board{width:46px;right:2px;bottom:35px}}

.doodle-hero-board{left:-22px;top:-18px;right:auto;bottom:auto;--tilt:-10deg}@media(max-width:900px){.doodle-hero-board{left:-10px;top:-12px;right:auto;bottom:auto}}@media(max-width:680px){.doodle-hero-board{left:0;top:-8px;right:auto;bottom:auto}}

.about-section>.section-heading{margin-bottom:24px}.about-grid{align-items:start}.about-copy h3{margin-top:0}.doodle-hero-board{left:-40px;top:auto;right:auto;bottom:-30px;--tilt:14deg}@media(max-width:900px){.doodle-hero-board{left:-32px;top:auto;bottom:-24px;right:auto}}@media(max-width:680px){.doodle-hero-board{left:4px;top:auto;bottom:-20px;right:auto}}

/* Anchor section doodles to headings rather than the bottom of sections. */
.doodle-experience-terminal{display:block;left:auto;right:20px;top:70px;bottom:auto}.doodle-skills-responsive{display:block;left:auto;right:106px;top:82px;bottom:auto}.doodle-work-flow{width:62px;right:112px;top:65px;--tilt:-9deg;background:#123B67}
@media(max-width:900px){.doodle-experience-terminal{display:block;width:50px;right:10px;top:70px}.doodle-skills-responsive{display:block;width:48px;right:93px;top:80px}.doodle-work-flow{width:52px;right:96px;top:70px}}
@media(max-width:680px){.doodle-experience-terminal{width:40px;right:4px;top:86px}.doodle-skills-responsive{width:40px;right:58px;top:12px}.doodle-work-flow{width:40px;right:58px;top:12px}.work-section .section-heading,.skills-section .section-heading{max-width:calc(100% - 110px)}}

/* Pair doodles on one baseline, with explicit alternating brand colors. */
.work-section .doodle-work-flow{background:#123B67;top:110px;right:98px;width:60px}.work-section .doodle-work-puzzle{background:#C92D48;top:110px;right:12px;width:66px}
.skills-section .doodle-skills-responsive{background:#123B67;top:85px;right:98px;left:auto;bottom:auto;width:60px;display:block}.skills-section .doodle-skills-palette{background:#C92D48;top:85px;right:12px;width:66px}.experience-section .doodle-experience-terminal{background:#123B67;top:85px;right:12px;width:55px}
.work-section>.section-heading,.skills-section>.section-heading{padding-right:180px;max-width:none}
@media(max-width:680px){.work-section .doodle-work-flow,.skills-section .doodle-skills-responsive{top:85px;right:60px;width:38px}.work-section .doodle-work-puzzle,.skills-section .doodle-skills-palette{top:85px;right:4px;width:42px}.work-section .doodle-work-flow,.work-section .doodle-work-puzzle{top:110px}.work-section>.section-heading,.skills-section>.section-heading{padding-right:110px;max-width:none}.experience-section .doodle-experience-terminal{top:85px;width:40px}}

/* Compact, straight featured-work cards. */
#featured-work .project-card,#featured-work .project-card.reveal.visible,#featured-work .project-card:nth-child(even){transform:none;margin-top:0;border-radius:14px;padding:10px;box-shadow:0 8px 24px rgba(18,59,103,.08)}
#featured-work .project-card:hover,#featured-work .project-card.reveal.visible:hover,#featured-work .project-card:focus-within,#featured-work .project-card.reveal.visible:focus-within{transform:translateY(-3px)}
#featured-work .project-card:before,#featured-work .project-card:after,#featured-work .scrap-label{display:none}
#featured-work .panel-title h3{text-decoration:none;padding-bottom:10px;border-bottom:2px solid #C92D48}
#featured-work .category-panel{padding:32px;margin:24px 0 36px;border-style:solid;border-radius:24px}
#featured-work .project-grid{padding:0;gap:24px;align-items:stretch}
#featured-work .project-card .project-art{height:210px;border-radius:8px}
#featured-work .project-card .card-copy{padding:18px 14px 14px}
#featured-work .card-copy h3{font-size:23px;margin:12px 0 8px}
#featured-work .tags{margin-top:16px;gap:6px}
#featured-work .project-card .card-cta{margin-top:16px;padding-top:12px}
@media(max-width:680px){#featured-work .category-panel{padding:20px}#featured-work .project-card .project-art{height:190px}#featured-work .project-grid{gap:20px}}

/* Matching compact cards for ongoing work. */
/* Compact, straight featured-work cards. */
.ongoing-section .project-card,.ongoing-section .project-card.reveal.visible,.ongoing-section .project-card:nth-child(even){transform:none;margin-top:0;border-radius:14px;padding:10px;box-shadow:0 8px 24px rgba(18,59,103,.08)}
.ongoing-section .project-card:hover,.ongoing-section .project-card.reveal.visible:hover,.ongoing-section .project-card:focus-within,.ongoing-section .project-card.reveal.visible:focus-within{transform:translateY(-3px)}
.ongoing-section .project-card:before,.ongoing-section .project-card:after,.ongoing-section .scrap-label{display:none}
.ongoing-section .panel-title h3{text-decoration:none;padding-bottom:10px;border-bottom:2px solid #C92D48}
.ongoing-section .category-panel{padding:32px;margin:24px 0 36px;border-style:solid;border-radius:24px}
.ongoing-section .project-grid{padding:0;gap:24px;align-items:stretch}
.ongoing-section .project-card .project-art{height:210px;border-radius:8px}
.ongoing-section .project-card .card-copy{padding:18px 14px 14px}
.ongoing-section .card-copy h3{font-size:23px;margin:12px 0 8px}
.ongoing-section .tags{margin-top:16px;gap:6px}
.ongoing-section .project-card .card-cta{margin-top:16px;padding-top:12px}
@media(max-width:680px){.ongoing-section .category-panel{padding:20px}.ongoing-section .project-card .project-art{height:190px}.ongoing-section .project-grid{gap:20px}}

.coord-moving{animation:coordinated-flight 9s linear infinite;offset-rotate:0deg;color:#123b67}.drone-one{offset-path:path('M35 55H135Q155 55 175 35H280')}.drone-two{offset-path:path('M35 110H125Q150 110 175 85H280');animation-delay:-3s;color:#b3263e}.drone-three{offset-path:path('M35 165H145Q165 165 185 135H280');animation-delay:-6s}@keyframes coordinated-flight{0%{offset-distance:0%}85%,100%{offset-distance:100%}}@media(prefers-reduced-motion:reduce){.coord-moving{animation:none}.drone-one{offset-distance:25%}.drone-two{offset-distance:50%}.drone-three{offset-distance:75%}}

/* Three evenly spaced drones weave around a continuous crossing route. */
.coordinated-drones .coord-moving{offset-path:path('M160.0 100.0L163.9 104.0L167.8 108.1L171.7 112.1L175.6 116.0L179.4 119.8L183.3 123.6L187.1 127.2L190.9 130.7L194.6 134.1L198.3 137.3L202.0 140.3L205.6 143.1L209.1 145.7L212.6 148.1L216.0 150.2L219.4 152.1L222.6 153.8L225.8 155.2L229.0 156.3L232.0 157.1L234.9 157.7L237.8 158.0L240.6 158.0L243.2 157.7L245.8 157.1L248.3 156.3L250.6 155.2L252.9 153.8L255.0 152.1L257.0 150.2L258.9 148.1L260.7 145.7L262.3 143.1L263.8 140.3L265.2 137.3L266.5 134.1L267.7 130.7L268.7 127.2L269.6 123.6L270.3 119.8L270.9 116.0L271.4 112.1L271.7 108.1L271.9 104.0L272.0 100.0L271.9 96.0L271.7 91.9L271.4 87.9L270.9 84.0L270.3 80.2L269.6 76.4L268.7 72.8L267.7 69.3L266.5 65.9L265.2 62.7L263.8 59.7L262.3 56.9L260.7 54.3L258.9 51.9L257.0 49.8L255.0 47.9L252.9 46.2L250.6 44.8L248.3 43.7L245.8 42.9L243.2 42.3L240.6 42.0L237.8 42.0L234.9 42.3L232.0 42.9L229.0 43.7L225.8 44.8L222.6 46.2L219.4 47.9L216.0 49.8L212.6 51.9L209.1 54.3L205.6 56.9L202.0 59.7L198.3 62.7L194.6 65.9L190.9 69.3L187.1 72.8L183.3 76.4L179.4 80.2L175.6 84.0L171.7 87.9L167.8 91.9L163.9 96.0L160.0 100.0L156.1 104.0L152.2 108.1L148.3 112.1L144.4 116.0L140.6 119.8L136.7 123.6L132.9 127.2L129.1 130.7L125.4 134.1L121.7 137.3L118.0 140.3L114.4 143.1L110.9 145.7L107.4 148.1L104.0 150.2L100.6 152.1L97.4 153.8L94.2 155.2L91.0 156.3L88.0 157.1L85.1 157.7L82.2 158.0L79.4 158.0L76.8 157.7L74.2 157.1L71.7 156.3L69.4 155.2L67.1 153.8L65.0 152.1L63.0 150.2L61.1 148.1L59.3 145.7L57.7 143.1L56.2 140.3L54.8 137.3L53.5 134.1L52.3 130.7L51.3 127.2L50.4 123.6L49.7 119.8L49.1 116.0L48.6 112.1L48.3 108.1L48.1 104.0L48.0 100.0L48.1 96.0L48.3 91.9L48.6 87.9L49.1 84.0L49.7 80.2L50.4 76.4L51.3 72.8L52.3 69.3L53.5 65.9L54.8 62.7L56.2 59.7L57.7 56.9L59.3 54.3L61.1 51.9L63.0 49.8L65.0 47.9L67.1 46.2L69.4 44.8L71.7 43.7L74.2 42.9L76.8 42.3L79.4 42.0L82.2 42.0L85.1 42.3L88.0 42.9L91.0 43.7L94.2 44.8L97.4 46.2L100.6 47.9L104.0 49.8L107.4 51.9L110.9 54.3L114.4 56.9L118.0 59.7L121.7 62.7L125.4 65.9L129.1 69.3L132.9 72.8L136.7 76.4L140.6 80.2L144.4 84.0L148.3 87.9L152.2 91.9L156.1 96.0L160.0 100.0Z');animation:drone-weave 12s linear infinite;offset-rotate:0deg}
.coordinated-drones .drone-one{animation-delay:0s}.coordinated-drones .drone-two{animation-delay:-4s}.coordinated-drones .drone-three{animation-delay:-8s}
@keyframes drone-weave{from{offset-distance:0%}to{offset-distance:100%}}
@media(prefers-reduced-motion:reduce){.coordinated-drones .coord-moving{animation:none}.coordinated-drones .drone-one{offset-distance:10%}.coordinated-drones .drone-two{offset-distance:43.333%}.coordinated-drones .drone-three{offset-distance:76.667%}}

/* Timed maze routes with intersection yielding. */
.maze-drones .drone-one{offset-path:none;animation:maze-one 16s linear infinite;animation-delay:0s;transform:translate(25px,100px)}
@keyframes maze-one{0%{transform:translate(25px,100px)}15%{transform:translate(100px,100px)}25%{transform:translate(100px,45px)}55%{transform:translate(260px,45px)}70%{transform:translate(260px,100px)}85%{transform:translate(295px,100px)}100%{transform:translate(295px,100px)}}
.maze-drones .drone-two{offset-path:none;animation:maze-two 16s linear infinite;animation-delay:0s;transform:translate(160px,20px)}
@keyframes maze-two{0%{transform:translate(160px,20px)}15%{transform:translate(160px,85px)}55%{transform:translate(160px,85px)}75%{transform:translate(160px,170px)}90%{transform:translate(80px,170px)}100%{transform:translate(80px,170px)}}
.maze-drones .drone-three{offset-path:none;animation:maze-three 16s linear infinite;animation-delay:0s;transform:translate(25px,155px)}
@keyframes maze-three{0%{transform:translate(25px,155px)}35%{transform:translate(220px,155px)}55%{transform:translate(220px,155px)}70%{transform:translate(220px,100px)}80%{transform:translate(220px,100px)}95%{transform:translate(220px,20px)}100%{transform:translate(220px,20px)}}
@media(prefers-reduced-motion:reduce){.maze-drones .coord-moving{animation:none!important}}

.simple-health-cover{width:78%;max-width:360px;padding:20px 22px;background:white;border-radius:14px;box-shadow:0 8px 25px rgba(18,59,103,.09)}.simple-health-title{display:flex;align-items:center;justify-content:space-between;font-size:14px;font-weight:600;color:#123b67}.simple-health-title i{width:8px;height:8px;background:#b3263e;border-radius:50%;animation:health-breathe 4s ease-in-out infinite}.simple-health-cover svg{display:block;width:100%;height:100px;margin:10px 0}.simple-health-labels{display:flex;justify-content:space-between;font-size:11px;color:#566476}.simple-health-trace{stroke-dasharray:1;animation:health-trace 7s ease-in-out infinite}.simple-health-dot{animation:health-breathe 4s ease-in-out infinite}@keyframes health-trace{0%,8%{stroke-dashoffset:1}55%,90%{stroke-dashoffset:0}100%{stroke-dashoffset:1}}@keyframes health-breathe{0%,100%{opacity:.45}50%{opacity:1}}@media(prefers-reduced-motion:reduce){.simple-health-trace{stroke-dashoffset:0}}

/* Notice, investigate, understand: a single card opens within the overview. */
.health-investigation{position:relative;width:80%;max-width:350px;height:185px;padding:15px 18px 27px;background:#fff;border-radius:12px;box-shadow:0 8px 26px rgba(18,59,103,.09);overflow:hidden;color:#123b67}.investigation-heading{display:flex;justify-content:space-between;font-size:12px;font-weight:600;margin-bottom:12px}.investigation-status{width:6px;height:6px;border-radius:50%;background:#123b67}.investigation-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.investigation-mini{height:50px;background:#f3f6fa;border:1px solid #e3eaf1;border-radius:6px;padding:8px}.investigation-mini>i{display:block;width:35%;height:3px;background:#bbcbdc;border-radius:2px;margin-bottom:4px}.investigation-mini svg{display:block;height:26px;width:100%;fill:none;stroke:#9db2c9;stroke-width:2}.investigation-bars{height:24px;display:flex;gap:6px;align-items:flex-end}.investigation-bars b{flex:1;background:#9db2c9;border-radius:2px 2px 0 0;height:50%}.investigation-bars b:nth-child(2){height:85%}.investigation-bars b:nth-child(3){height:65%}.investigation-bars b:nth-child(4){height:95%}
.investigation-focus{position:absolute;top:43px;left:18px;width:calc((100% - 44px)/2);height:50px;border:1px solid #dae3ed;border-radius:6px;background:#f3f6fa;padding:8px;animation:investigate-card 10s ease-in-out infinite;overflow:hidden;z-index:2}.focus-header{display:flex;justify-content:space-between;align-items:center;font-size:10px;font-weight:600;white-space:nowrap}.focus-header i{width:6px;height:6px;border-radius:50%;background:#123b67;animation:notice-signal 10s infinite}.focus-chart{display:block;width:100%;height:22px;margin-top:3px;animation:investigate-chart 10s ease-in-out infinite;overflow:visible}.focus-grid{fill:none;stroke:#e0e8f0;stroke-width:1}.focus-line{fill:none;stroke:#123b67;stroke-width:3;stroke-linejoin:round;stroke-linecap:round}.focus-point{fill:#b3263e;animation:understand-pattern 10s infinite}.focus-ring{fill:none;stroke:#b3263e;stroke-width:1.5;animation:understand-pattern 10s infinite}.focus-note{font-size:10px;color:#566476;opacity:0;animation:understand-pattern 10s infinite}.investigation-stage{position:absolute;bottom:8px;left:18px;right:18px;display:flex;justify-content:space-between;font-size:9px;color:#566476}.investigation-stage span:first-child{animation:stage-notice 10s infinite}.investigation-stage span:nth-child(2){animation:stage-investigate 10s infinite}.investigation-stage span:last-child{animation:stage-understand 10s infinite}
@keyframes investigate-card{0%,12%,90%,100%{top:43px;left:18px;width:calc((100% - 44px)/2);height:50px;background:#f3f6fa;border-color:#dae3ed}20%,27%{top:43px;left:18px;width:calc((100% - 44px)/2);height:50px;background:#fce9ed;border-color:#b3263e}38%,78%{top:37px;left:12px;width:calc(100% - 24px);height:119px;background:#fff;border-color:#b3263e}}
@keyframes investigate-chart{0%,27%,90%,100%{height:22px}38%,78%{height:68px}}@keyframes notice-signal{0%,12%,90%,100%{background:#123b67}20%,78%{background:#b3263e}}@keyframes understand-pattern{0%,43%,86%,100%{opacity:0}55%,78%{opacity:1}}@keyframes stage-notice{0%,28%{color:#b3263e}35%,100%{color:#78889a}}@keyframes stage-investigate{0%,28%,57%,100%{color:#78889a}35%,52%{color:#b3263e}}@keyframes stage-understand{0%,52%,90%,100%{color:#78889a}60%,80%{color:#b3263e}}
@media(prefers-reduced-motion:reduce){.investigation-focus{top:37px;left:12px;width:calc(100% - 24px);height:119px;background:white}.focus-chart{height:68px}.focus-point,.focus-ring,.focus-note{opacity:1}}

.health-investigation{padding-top:43px}.health-investigation .focus-chart{margin-top:3px}

.health-investigation .focus-line{animation:health-live-pattern 6s ease-in-out infinite}
@keyframes health-live-pattern{0%,100%{d:path('M10 67L42 53L73 58L106 29L137 34L169 69L199 46L230 37')}33%{d:path('M10 52L42 64L73 39L106 48L137 65L169 38L199 29L230 45')}66%{d:path('M10 70L42 43L73 51L106 61L137 32L169 24L199 53L230 28')}}
@media(prefers-reduced-motion:reduce){.health-investigation .focus-line{animation:none}}

.visitor-navigation{width:90%;max-width:380px}.visitor-navigation svg{display:block;width:100%;height:auto;overflow:visible}.visitor-person{animation:visitor-journey 11s linear infinite}.visitor-guidance{stroke-dasharray:1;stroke-dashoffset:1;animation:visitor-route 11s ease-in-out infinite}.visitor-arrival{opacity:0;animation:visitor-arrives 11s ease-in-out infinite}
@keyframes visitor-journey{0%,8%{transform:translate(35px,150px);opacity:1}26%,45%{transform:translate(135px,150px);opacity:1}65%{transform:translate(135px,45px);opacity:1}86%,94%{transform:translate(265px,45px);opacity:1}98%,100%{transform:translate(265px,45px);opacity:0}}
@keyframes visitor-route{0%,28%{stroke-dashoffset:1;opacity:0}34%{opacity:1}48%,92%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:0;opacity:0}}
@keyframes visitor-arrives{0%,82%{opacity:0}88%,94%{opacity:.7}100%{opacity:0}}
@media(prefers-reduced-motion:reduce){.visitor-person{transform:translate(135px,105px)}.visitor-guidance{stroke-dashoffset:0;opacity:1}}

.community-cover{width:90%;max-width:370px}.community-cover svg{display:block;width:100%;height:auto}.community-person{color:#123b67}.cp-left{animation:community-left 9s ease-in-out infinite}.cp-top{animation:community-top 9s ease-in-out infinite;color:#b3263e}.cp-right{animation:community-right 9s ease-in-out infinite}.community-connections,.community-bubble{animation:community-connect 9s ease-in-out infinite}.community-orbit{animation:community-circle 9s ease-in-out infinite;transform-origin:160px 100px}
@keyframes community-left{0%,10%,100%{transform:translate(55px,130px)}35%,80%{transform:translate(103px,117px)}}@keyframes community-top{0%,10%,100%{transform:translate(160px,28px)}35%,80%{transform:translate(160px,62px)}}@keyframes community-right{0%,10%,100%{transform:translate(265px,130px)}35%,80%{transform:translate(217px,117px)}}@keyframes community-connect{0%,30%,95%,100%{opacity:0}45%,80%{opacity:1}}@keyframes community-circle{0%,10%,100%{opacity:.3;transform:scale(.8)}35%,80%{opacity:1;transform:scale(1)}}
@media(prefers-reduced-motion:reduce){.cp-left{transform:translate(103px,117px)}.cp-top{transform:translate(160px,62px)}.cp-right{transform:translate(217px,117px)}.community-connections,.community-bubble{opacity:1}}

.simple-assistant{width:90%;max-width:360px}.simple-assistant svg{width:100%;display:block}.assistant-question{animation:assistant-ask 8s ease-in-out infinite}.assistant-thinking{animation:assistant-think 8s ease-in-out infinite}.assistant-answer{animation:assistant-reply 8s ease-in-out infinite}@keyframes assistant-ask{0%,100%{opacity:.4;transform:translateY(4px)}15%,85%{opacity:1;transform:none}}@keyframes assistant-think{0%,15%,55%,100%{opacity:0}25%,45%{opacity:1}}@keyframes assistant-reply{0%,40%,100%{opacity:0;transform:translateY(7px)}55%,85%{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.assistant-answer,.assistant-question{opacity:1}.assistant-thinking{opacity:0}}

.agent-bot-cover{width:91%;max-width:370px}.agent-bot-cover svg{display:block;width:100%;height:auto}.agent-request{animation:bot-request 8s ease-in-out infinite}.agent-response{animation:bot-response 8s ease-in-out infinite}.agent-eyes{transform-box:fill-box;transform-origin:center;animation:bot-blink 8s ease-in-out infinite}.agent-smile{animation:bot-smile 8s ease-in-out infinite}
@keyframes bot-request{0%,8%{opacity:0;transform:translateX(-12px)}20%{opacity:1;transform:translateX(0)}38%,100%{opacity:0;transform:translateX(45px)}}
@keyframes bot-blink{0%,34%,42%,49%,57%,100%{transform:scaleY(1)}38%,53%{transform:scaleY(.12)}}
@keyframes bot-response{0%,55%{opacity:0;transform:translateX(-35px)}70%,88%{opacity:1;transform:translateX(0)}100%{opacity:0;transform:translateX(10px)}}
@keyframes bot-smile{0%,50%{opacity:.45}65%,90%{opacity:1}100%{opacity:.45}}
@media(prefers-reduced-motion:reduce){.agent-request,.agent-response{opacity:1;transform:none}.agent-eyes{transform:none}.agent-smile{opacity:1}}

.ongoing-section .scrap-label,.ongoing-section .project-card:before,.ongoing-section .project-card:after{display:none}.ongoing-section .card-meta:has(>span:only-child){justify-content:flex-end}.testing-agent-cover{width:90%;max-width:360px}.testing-agent-cover svg{width:100%;display:block}.testing-cursor{animation:testing-explore 8s ease-in-out infinite}.testing-target{animation:testing-detect 8s ease-in-out infinite}@keyframes testing-explore{0%,10%{transform:translate(86px,98px)}30%,40%{transform:translate(176px,86px)}60%,85%{transform:translate(194px,140px)}100%{transform:translate(86px,98px)}}@keyframes testing-detect{0%,48%,100%{opacity:0}60%,85%{opacity:1}}@media(prefers-reduced-motion:reduce){.testing-cursor{transform:translate(194px,140px)}.testing-target{opacity:1}}
