:root{--cream:#f6f3ed;--paper:#fffdf9;--navy:#172b3a;--navy-soft:#294253;--sage:#a9b8a4;--sage-light:#dce4d8;--orange:#d9855d;--ink:#1d2529;--muted:#6e7775;--line:#d9ddd5;--shadow:0 24px 70px rgba(28,42,45,.11)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Inter,Arial,sans-serif;overflow:hidden}button,a{font:inherit}a{color:inherit;text-decoration:none}.site-header{position:fixed;z-index:20;top:0;left:0;right:0;height:82px;padding:0 5.2vw;display:flex;align-items:center;justify-content:space-between;background:rgba(246,243,237,.82);backdrop-filter:blur(16px);border-bottom:1px solid rgba(217,221,213,.65)}.brand{display:flex;align-items:center;gap:12px;font-family:"Plus Jakarta Sans",sans-serif;font-size:13px;font-weight:700;letter-spacing:-.02em}.brand-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--navy);color:var(--cream);font-size:10px;letter-spacing:-.1em}.main-nav{display:flex;gap:20px}.nav-link{display:flex;gap:6px;align-items:center;color:#8b918c;font-size:10px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;transition:color .25s}.nav-link span:first-child{font-size:8px;color:#b1b5b0}.nav-link:hover,.nav-link.active{color:var(--navy)}.nav-link.active span:first-child{color:var(--orange)}.header-actions{display:flex;align-items:center;gap:20px}.language-switch{border:0;background:transparent;color:var(--muted);padding:4px;cursor:pointer;font-size:10px;font-weight:700;letter-spacing:.08em}.language-option.active{color:var(--navy)}.language-divider{color:#c4c8c0;margin:0 4px}.menu-toggle{display:none;border:0;background:none;padding:5px}.menu-toggle span{display:block;width:24px;height:2px;background:var(--navy);margin:5px}.story{position:relative;height:100vh;padding:82px 5.2vw 55px}.slides{height:100%;position:relative}.slide{position:absolute;inset:0;overflow:auto;opacity:0;visibility:hidden;transform:translateX(32px);transition:opacity .55s ease,transform .55s ease,visibility .55s}.slide.active{opacity:1;visibility:visible;transform:translateX(0)}.slide-inner{max-width:1220px;min-height:100%;margin:auto;padding:7vh 3.2vw 8vh;display:flex;flex-direction:column;justify-content:center}.hero-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:6vw;align-items:center}.eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 25px;color:var(--orange);font-size:10px;font-weight:700;letter-spacing:.16em}.eyebrow-dot{width:7px;height:7px;border-radius:50%;background:var(--orange)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:"Plus Jakarta Sans",sans-serif;letter-spacing:-.055em}h1{font-size:clamp(52px,7vw,100px);line-height:.98;font-weight:700;margin-bottom:32px;color:var(--navy)}h1 em,h2 em{font-style:normal;color:var(--orange)}.hero-description{max-width:500px;line-height:1.75;color:var(--muted);font-size:14px}.hero-meta{display:flex;gap:55px;margin:35px 0}.hero-meta span{display:flex;flex-direction:column;gap:7px}.hero-meta b{color:#a0a7a0;font-size:9px;letter-spacing:.12em;text-transform:uppercase}.hero-meta strong{font-family:"Plus Jakarta Sans";font-size:12px;color:var(--navy)}.outline-button{border:1px solid var(--navy);background:transparent;color:var(--navy);padding:14px 19px;border-radius:30px;font-size:11px;font-weight:700;cursor:pointer;transition:.3s}.outline-button span{margin-left:18px;font-size:16px}.outline-button:hover{background:var(--navy);color:white}.hero-visual{position:relative;max-width:480px;justify-self:end;width:100%}.visual-frame{position:relative;z-index:2;width:82%;margin-left:auto;background:var(--sage);padding:12px 12px 50px;transform:rotate(3deg);box-shadow:var(--shadow)}.visual-frame img{display:block;width:100%;height:420px;object-fit:cover;filter:saturate(.8)}.image-missing{height:470px;background:var(--sage)}.image-missing:after{content:"PROFILE PHOTO";display:grid;place-items:center;height:100%;font-size:11px;letter-spacing:.15em;color:var(--navy)}.portrait-note{position:absolute;bottom:15px;left:22px;right:22px;display:flex;justify-content:space-between;align-items:end;color:var(--navy);font-size:10px;line-height:1.4;text-transform:uppercase;letter-spacing:.08em}.note-arrow{font-size:22px}.shape{position:absolute;border-radius:50%}.shape-orange{width:115px;height:115px;background:var(--orange);left:0;top:12%;opacity:.9}.shape-sage{width:85px;height:85px;border:1px solid var(--navy);right:0;bottom:5%}.floating-year{position:absolute;right:-28px;top:50%;font:700 11px "Plus Jakarta Sans";color:var(--navy);transform:rotate(90deg);letter-spacing:.18em}.section-heading{margin-bottom:42px}.section-heading h2,.sirana-top h2{color:var(--navy);font-size:clamp(39px,5vw,67px);line-height:1.03;margin:0}.split-heading{display:flex;justify-content:space-between;align-items:end}.heading-aside{max-width:250px;color:var(--muted);font-size:12px;line-height:1.65}.experience-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:5vw}.timeline-card{background:var(--navy);color:var(--cream);border-radius:4px 38px 4px 38px;padding:33px;min-height:280px;position:relative;overflow:hidden}.card-number{position:absolute;right:28px;top:24px;font:700 46px "Plus Jakarta Sans";color:rgba(255,255,255,.09)}.card-kicker,.project-index{font-size:9px;letter-spacing:.14em;color:var(--orange);font-weight:700}.timeline-card h3{font-size:25px;line-height:1.15;margin:35px 0 21px}.timeline-card p{color:#c6d0cc;font-size:12px;line-height:1.7;max-width:300px}.timeline-line{height:1px;width:100%;background:#52636b;margin:18px 0 20px}.timeline-line span{display:block;background:var(--orange);height:3px;width:30%}.project-list{display:flex;flex-direction:column;gap:18px}.mini-project{display:grid;grid-template-columns:150px 1fr;gap:24px;align-items:center;padding:13px;border:1px solid var(--line);border-radius:4px 25px 4px 25px;background:var(--paper)}.mini-project-image{position:relative;height:110px;overflow:hidden;background:var(--sage-light)}.mini-project-image img{width:100%;height:100%;object-fit:cover}.mini-project-image span{position:absolute;bottom:8px;left:8px;background:var(--paper);padding:4px 6px;font-size:8px;letter-spacing:.1em;color:var(--navy)}.placeholder-icon{height:100%;display:grid;place-items:center;font-size:38px;color:var(--navy)}.mini-project h3{font-size:18px;margin:8px 0}.mini-project p,.project-info p,.conference-card>p{font-size:12px;line-height:1.65;color:var(--muted);margin:0}.project-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:24px;align-items:start}.feature-project{border-radius:5px 35px 5px 35px;overflow:hidden;background:var(--paper);box-shadow:0 10px 40px rgba(28,42,45,.05)}.project-jimun{margin-top:45px}.feature-image{height:230px;background:var(--sage-light);overflow:hidden}.feature-image img{width:100%;height:100%;object-fit:cover}.project-info{padding:21px 25px 25px}.project-info h3{font-size:28px;color:var(--navy);margin:10px 0 10px}.tech-list{display:flex;flex-wrap:wrap;gap:7px;margin-top:18px}.tech-list span{font-size:9px;border:1px solid var(--line);padding:6px 9px;border-radius:15px;color:var(--navy)}.sirana-slide{background:var(--navy);color:var(--cream)}.sirana-slide .slide-inner{padding-top:5vh}.sirana-top{display:flex;justify-content:space-between;align-items:end;margin-bottom:35px}.sirana-top h2{color:var(--cream);font-size:clamp(42px,5vw,70px)}.sirana-top h2 em{color:var(--sage)}.sirana-label{display:flex;gap:10px;align-items:center;color:#bdc8c1;font-size:11px;max-width:185px;line-height:1.5}.label-dot{width:8px;height:8px;background:var(--orange);border-radius:50%;flex:none}.sirana-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:6vw;align-items:center}.sirana-copy>p{color:#bdc8c1;line-height:1.75;font-size:13px;max-width:390px}.feature-list{display:grid;grid-template-columns:1fr 1fr;gap:11px 20px;margin:25px 0}.feature-list span{font-size:11px;color:var(--cream);padding-left:17px;position:relative}.feature-list span:before{content:"";position:absolute;left:0;top:6px;width:6px;height:6px;border-radius:50%;background:var(--orange)}.tech-list.dark span{border-color:#556b70;color:#ced8d1}.sirana-screens{position:relative;min-height:330px}.screen{position:absolute;background:#d7e0d6;padding:10px;box-shadow:0 18px 35px rgba(0,0,0,.25)}.screen img{width:100%;height:100%;object-fit:cover}.screen-back{width:63%;height:235px;right:5%;top:0;transform:rotate(6deg);opacity:.85}.screen-front{width:65%;height:240px;left:4%;bottom:0;transform:rotate(-5deg)}.screen-caption{position:absolute;right:0;bottom:-4px;transform:rotate(-90deg);transform-origin:right;letter-spacing:.16em;font-size:9px;color:var(--sage)}.research-layout{display:grid;grid-template-columns:1fr 1fr;gap:4vw}.paper-card{position:relative;background:var(--orange);padding:38px 35px 25px;min-height:290px;border-radius:4px 35px 4px 35px;color:var(--navy)}.paper-stamp{position:absolute;right:24px;top:22px;border:1px solid rgba(23,43,58,.45);padding:9px;font:700 9px/1.35 "Plus Jakarta Sans";text-align:center;letter-spacing:.08em}.paper-card h3{font-size:25px;line-height:1.2;max-width:420px;margin:31px 0 40px}.paper-card .card-kicker{color:var(--navy)}.paper-footer{display:flex;justify-content:space-between;border-top:1px solid rgba(23,43,58,.25);padding-top:14px;font-size:10px}.conference-card{padding:0 10px}.conference-image{height:230px;position:relative;background:var(--sage-light);overflow:hidden}.conference-image img{width:100%;height:100%;object-fit:cover}.image-label{position:absolute;bottom:12px;left:12px;background:var(--paper);padding:7px 10px;font-size:9px;color:var(--navy)}.conference-card>p{max-width:390px;margin-top:18px}.work-inner{display:grid;grid-template-columns:.12fr .72fr .72fr 1fr;gap:3vw;align-items:center}.work-number{font:700 55px "Plus Jakarta Sans";color:var(--sage)}.work-copy h2{font-size:clamp(40px,5vw,65px);line-height:1.05;color:var(--navy);margin-bottom:25px}.work-copy>p{font-size:13px;line-height:1.7;color:var(--muted);max-width:390px}.work-period{display:flex;flex-direction:column;gap:6px;margin-top:29px}.work-period strong{font:700 13px "Plus Jakarta Sans";color:var(--navy)}.work-period span{font-size:11px;color:var(--orange)}.work-points{display:flex;flex-direction:column;gap:0;border-left:1px solid var(--line)}.work-points>div{display:grid;grid-template-columns:38px 1fr;gap:14px;padding:22px 0 22px 27px;border-bottom:1px solid var(--line)}.work-points span{color:var(--orange);font-size:10px;font-weight:700}.work-points p{font-size:12px;line-height:1.55;color:var(--navy);margin:0}.contact-slide{background:var(--sage-light)}.contact-inner{display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;position:relative}.contact-copy h2{font-size:clamp(47px,6vw,82px);line-height:.98;color:var(--navy);margin-bottom:25px}.contact-copy>p{max-width:420px;color:var(--muted);font-size:13px;line-height:1.7}.email-link{display:inline-block;margin-top:24px;color:var(--navy);font:700 14px "Plus Jakarta Sans";border-bottom:2px solid var(--orange);padding-bottom:7px}.email-link span{color:var(--orange);margin-left:20px}.contact-actions{align-self:center;display:flex;flex-direction:column}.contact-link{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #becbb9;padding:16px 0;color:var(--navy)}.contact-link span{font-size:9px;letter-spacing:.16em;color:#849087}.contact-link strong{font:600 12px "Plus Jakarta Sans"}.cv-button{display:flex;justify-content:space-between;align-items:center;margin-top:24px;background:var(--navy);color:var(--cream);padding:15px 18px;border-radius:3px 20px 3px 20px;font-size:11px;font-weight:700}.cv-button span{font-size:18px}.closing-note{position:absolute;bottom:0;left:3.2vw;font:700 10px "Plus Jakarta Sans";color:var(--navy);letter-spacing:.05em}.closing-note span{color:var(--orange);margin:0 7px}.progress-rail{position:absolute;z-index:4;right:2.5vw;top:50%;height:160px;width:2px;background:var(--line);transform:translateY(-50%)}.progress-fill{display:block;width:100%;height:16.666%;background:var(--orange);transition:height .5s ease}.slide-count{position:absolute;z-index:4;right:1.8vw;top:calc(50% - 105px);font:700 10px "Plus Jakarta Sans";color:var(--navy);writing-mode:vertical-rl}.slide-count span{color:#a8aea7}.slide-controls{position:absolute;z-index:5;left:5.2vw;bottom:25px;display:flex;gap:20px}.control-button{border:0;background:none;color:var(--navy);cursor:pointer;font-size:10px;font-weight:700;padding:4px 0}.control-button.next{color:var(--orange)}.navigation-dots{position:absolute;right:5.2vw;bottom:29px;display:flex;gap:7px}.dot{width:6px;height:6px;border:1px solid var(--navy);border-radius:50%;cursor:pointer;transition:.25s}.dot.active{background:var(--orange);border-color:var(--orange);transform:scale(1.35)}
.visual-frame img,.mini-project-image img,.feature-image img,.screen img,.conference-image img{object-fit:contain;background:var(--sage-light)}

/* Keep project visuals readable without cropping them into decorative boxes. */
.visual-frame{width:100%;margin-left:0;padding:0;background:transparent;transform:none;box-shadow:none}
.visual-frame img{width:100%;height:auto;max-height:470px;background:transparent}
.portrait-note{bottom:14px;left:14px;right:14px}
.feature-project{overflow:visible;background:transparent;box-shadow:none}
.feature-image{height:auto;background:transparent;overflow:visible}
.feature-image img{display:block;width:100%;height:auto;max-height:340px;background:transparent}
.project-info{padding:22px 4px 8px}
.project-info p,.mini-project p,.conference-card>p{font-size:13px;line-height:1.8}
.mini-project{background:transparent;border:0;padding:0;align-items:start}
.mini-project-image{height:auto;min-height:110px;background:transparent}
.mini-project-image img{display:block;width:100%;height:auto;max-height:150px}
.dual-image{display:grid;grid-template-columns:1fr 1fr;gap:6px;align-items:start}
.dual-image img{max-width:100%;min-width:0}
.project-link{display:inline-block;margin-top:12px;color:var(--orange);font-size:10px;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:3px}
.sirana-screens{display:flex;flex-wrap:wrap;gap:18px;min-height:0;align-items:center}
.screen,.screen-back,.screen-front{position:static;width:calc(50% - 9px);height:auto;transform:none;opacity:1;padding:0;background:transparent;box-shadow:none}
.screen img{display:block;width:100%;height:auto;background:transparent}
.conference-image{height:auto;background:transparent;overflow:visible}
.conference-image img{display:block;width:100%;height:auto;max-height:340px;background:transparent}
.internship-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:30px}
.internship-gallery img{display:block;width:100%;height:auto;max-height:230px;object-fit:contain;background:var(--sage-light)}
.sirana-screens{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}
.sirana-screens .screen{width:100%;max-width:760px;margin:0 auto}
.sirana-screens .screen img{width:100%;max-height:none}
.sirana-screens .screen-caption{position:static;transform:none;display:block;text-align:right}
.sirana-layout{grid-template-columns:.65fr 1.35fr}
.work-visual{display:flex;align-items:center;justify-content:center}
.work-visual img{display:block;width:100%;max-width:300px;height:auto;object-fit:contain}
.work-visual{flex-direction:column;gap:14px}
.work-visual img{max-width:250px}
.internship-slide{background:#edf1e9}
.projects-slide{background:#f4eee8}
.research-slide{background:#e8eef0}
.work-slide{background:#e7edf0}
.internship-slide .slide-inner{background:#fbfcf8}
.projects-slide .slide-inner{background:#fffaf6}
.research-slide .slide-inner{background:#f8fbfb}
.work-slide .slide-inner{background:#f8fbfc}
.ppid-project{grid-template-columns:minmax(230px,.95fr) 1.05fr;gap:28px;padding:20px;background:#fffdf9;border:2px solid rgba(217,133,93,.35);box-shadow:0 12px 30px rgba(28,42,45,.08)}
.ppid-project .mini-project-image{height:185px;background:#e8eee8}
.ppid-project .mini-project-image img{height:100%;object-fit:contain}
.ppid-project h3{font-size:23px;margin-top:10px;color:var(--navy)}
.ppid-project p{font-size:13px;line-height:1.75}
.ppid-project .project-link{font-size:11px;margin-top:17px}
.sinar-project{grid-template-columns:minmax(230px,.95fr) 1.05fr;gap:28px;padding:20px;background:#f7fbf5;border:2px solid rgba(169,184,164,.75);box-shadow:0 12px 30px rgba(28,42,45,.08)}
.sinar-project .mini-project-image{height:185px;background:#e1eadf}
.sinar-project .mini-project-image img{height:100%;object-fit:contain}
.sinar-project h3{font-size:23px;margin-top:10px;color:var(--navy)}
.sinar-project p{font-size:13px;line-height:1.75}
.internship-content{display:block}
.internship-content .timeline-card{display:grid;grid-template-columns:1fr 1.4fr;gap:40px;align-items:center;min-height:0;margin-bottom:32px;padding:30px 38px;border-radius:8px 34px 8px 34px}
.internship-content .timeline-card h3{margin:12px 0 0;font-size:28px}
.internship-content .timeline-card .timeline-line{margin:0 0 12px}
.internship-content .timeline-card p:last-child{max-width:570px;margin:0}
.internship-projects{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.internship-projects .mini-project{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:0;background:var(--paper);border:1px solid var(--line);border-radius:8px 30px 8px 30px;overflow:hidden;box-shadow:0 12px 32px rgba(28,42,45,.07)}
.internship-projects .mini-project-image{height:220px;min-height:0;display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:14px;background:var(--sage-light)}
.internship-projects .mini-project-image:not(.dual-image){display:block;padding:0}
.internship-projects .mini-project-image:not(.dual-image) img{height:100%}
.internship-projects .mini-project-image img{height:100%;object-fit:contain;background:var(--paper)}
.internship-projects .mini-project-image span{top:23px;bottom:auto;left:23px;z-index:2}
.internship-projects .mini-project>div:last-child{padding:20px 24px 24px}
.internship-projects .mini-project h3{font-size:22px;margin:8px 0 10px}
.internship-projects .mini-project p{font-size:12px;line-height:1.75}
.internship-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:30px;align-items:stretch}
.internship-gallery img{display:block;width:100%;height:178px;object-fit:contain;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:0}

/* Preserve the complete artwork and let each image use its natural ratio. */
.internship-projects .mini-project-image,
.internship-projects .mini-project-image:not(.dual-image),
.internship-projects .mini-project-image.dual-image{height:auto;min-height:240px;align-items:center}
.internship-projects .mini-project-image:not(.dual-image) img,
.internship-projects .mini-project-image img{display:block;width:100%;height:auto;max-height:none;object-fit:contain}
.internship-projects .mini-project-image.dual-image img{width:100%;height:auto;max-height:none}
.internship-gallery{align-items:stretch}
.work-visual img{width:100%;max-width:380px;height:auto;object-fit:contain}
.sirana-screens .screen img,.conference-image img,.feature-image img{height:auto;max-height:none;object-fit:contain}

/* Internship case-study showcase */
.internship-slide .slide-inner{justify-content:flex-start;padding-top:5vh;padding-bottom:7vh}
.internship-slide{overflow-x:hidden;overflow-y:auto}
.internship-slide .slide-inner{min-height:auto}
.internship-slide .section-heading{margin-bottom:28px}
.internship-content .timeline-card{display:grid;grid-template-columns:1fr 1.5fr;gap:40px;align-items:center;margin-bottom:28px;padding:27px 34px}
.internship-content .timeline-card h3{margin:12px 0 0}
.internship-content .timeline-card p:last-child{margin-bottom:0}
.internship-projects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.internship-projects .mini-project,
.internship-projects .ppid-project,
.internship-projects .sinar-project{display:flex;flex-direction:column;min-width:0;height:100%;padding:0;gap:0;overflow:hidden;border:1px solid rgba(217,221,213,.95);border-radius:16px 16px 16px 4px;background:var(--paper);box-shadow:0 12px 30px rgba(28,42,45,.07)}
.internship-projects .mini-project-image,
.internship-projects .ppid-project .mini-project-image,
.internship-projects .sinar-project .mini-project-image{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:8px;align-items:stretch;width:100%;height:250px;min-height:0;padding:14px;overflow:hidden;background:var(--sage-light)}
.internship-projects .ppid-project .mini-project-image{display:block;padding:0;background:#e8eee8}
.internship-projects .mini-project-image img,
.internship-projects .ppid-project .mini-project-image img,
.internship-projects .sinar-project .mini-project-image img{display:block;width:100%;height:100%;max-height:none;object-fit:cover;background:transparent}
.internship-projects .ppid-project .mini-project-image img{object-fit:cover}
.internship-projects .mini-project-image span{top:26px;bottom:auto;left:26px;z-index:2;border-radius:4px;padding:6px 8px}
.internship-projects .mini-project>div:last-child,
.internship-projects .ppid-project>div:last-child,
.internship-projects .sinar-project>div:last-child{display:flex;flex:1;flex-direction:column;align-items:flex-start;padding:21px 24px 23px}
.internship-projects .mini-project h3{margin:7px 0 9px;font-size:23px;color:var(--navy)}
.internship-projects .mini-project p{font-size:12px;line-height:1.75}
.internship-projects .project-link{margin-top:auto;padding-top:17px}
.internship-gallery{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:14px;margin-top:28px}
.internship-gallery img{display:block;width:100%;height:170px;max-height:none;padding:0;border:0;border-radius:12px 12px 12px 3px;background:var(--sage-light);object-fit:cover}
.internship-gallery figure,.sirana-screens figure,.work-visual figure{margin:0;min-width:0}
.internship-gallery figcaption,.sirana-screens figcaption,.work-visual figcaption{margin-top:9px;color:var(--muted);font-size:10px;line-height:1.45;letter-spacing:.03em}
.sirana-slide{background:var(--cream);color:var(--ink)}
.sirana-slide .slide-inner{background:var(--paper);border-color:var(--line);box-shadow:0 18px 50px rgba(28,42,45,.08)}
.sirana-slide .sirana-top h2{color:var(--navy)}
.sirana-slide .sirana-top h2 em{color:var(--orange)}
.sirana-slide .eyebrow{color:var(--orange)}
.sirana-slide .sirana-label{color:var(--navy)}
.sirana-slide .sirana-copy>p{color:var(--muted)}
.sirana-slide .feature-list span{color:var(--navy)}
.sirana-slide .feature-list span:before{background:var(--orange)}
.sirana-slide .tech-list.dark span{color:var(--navy);border-color:var(--sage)}
.sirana-slide .screen{background:var(--sage-light);padding:10px;border-radius:12px}
.sirana-slide .screen img{background:#f4f4ef;border-radius:6px}
.sirana-slide .sirana-screens figcaption{color:var(--navy)}
.sirana-slide .screen-caption{color:var(--orange)}
.featured-sirana{margin-top:34px;padding:30px 32px 32px;background:var(--cream);border:1px solid rgba(217,133,93,.3);border-radius:18px 18px 18px 5px}
.featured-sirana .sirana-top{margin-bottom:26px}
.featured-sirana .sirana-top h2{font-size:clamp(34px,4vw,55px)}
.featured-sirana .sirana-layout{grid-template-columns:.75fr 1.25fr;gap:4vw}
.featured-sirana .sirana-copy>p{font-size:12px}
.featured-sirana .sirana-copy>p{color:var(--muted)}
.featured-sirana .feature-list span{color:var(--navy)}
.featured-sirana .feature-list span:before{background:var(--orange)}
.featured-sirana .tech-list.dark span{color:var(--navy);border-color:var(--sage)}
.featured-sirana .sirana-screens{grid-template-columns:1fr 1fr;gap:14px}
.featured-sirana .sirana-screens .screen{padding:7px}
.featured-sirana .sirana-screens figcaption{font-size:9px}

.projects-slide .project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:stretch}
.projects-slide .feature-project{display:flex;flex-direction:column;min-width:0;height:100%;margin:0;border:1px solid var(--line);border-radius:18px 18px 18px 5px;background:var(--paper);overflow:hidden;box-shadow:0 12px 30px rgba(28,42,45,.07)}
.projects-slide .feature-image{height:250px;min-height:250px;padding:14px;background:var(--sage-light);display:flex;align-items:center;justify-content:center;overflow:hidden}
.projects-slide .feature-image img{display:block;width:100%;height:100%;max-height:none;object-fit:contain;background:var(--paper);border-radius:8px}
.projects-slide .project-info{display:flex;flex:1;flex-direction:column;padding:23px 25px 24px}
.projects-slide .project-info h3{margin:8px 0 11px;font-size:25px}
.projects-slide .project-info p{font-size:12px;line-height:1.75;margin:0;color:var(--muted)}
.projects-slide .project-info .tech-list{margin-top:auto;padding-top:20px}
.work-visual{display:flex;flex-direction:column;gap:18px;align-items:stretch}
.work-visual figure{width:100%}
.work-visual img{display:block;width:100%;max-width:none;height:270px;object-fit:cover;object-position:center;border-radius:12px 12px 12px 3px;background:transparent}
.work-visual figcaption{color:var(--navy)}
.work-inner .work-visual{width:calc(100% + 54px);margin-left:-27px}
.work-inner .work-visual figure{width:100%}
.research-copy{display:flex;flex-direction:column;gap:22px}
.research-description{max-width:560px;margin:0;color:var(--muted);font-size:13px;line-height:1.8}
.research-copy .paper-card{min-height:250px}
.research-layout .conference-card{padding:0;align-self:center;width:100%}
.research-layout .conference-image{height:auto}
.research-layout .conference-image img{display:block;width:100%;height:auto;max-height:none;object-fit:contain}

/* Reference-inspired presentation layout: compact pill navigation and framed content boards. */
.main-nav{gap:5px;padding:7px 10px;background:rgba(255,253,249,.9);border:1px solid var(--line);border-radius:24px;box-shadow:0 8px 24px rgba(28,42,45,.05)}
.nav-link{padding:7px 9px;border-radius:16px}
.nav-link.active{background:var(--sage-light)}
.slide-inner{background:var(--paper);border:1px solid #dfe3dc;border-radius:26px;margin-top:2vh;margin-bottom:2vh;padding-left:4vw;padding-right:4vw;box-shadow:0 18px 50px rgba(28,42,45,.08);position:relative}
.slide-inner:before{content:"";position:absolute;top:0;left:4vw;right:4vw;height:3px;background:linear-gradient(90deg,var(--orange) 0 18%,var(--sage) 18% 54%,transparent 54%);border-radius:0 0 8px 8px}
.slide:not(.sirana-slide):not(.contact-slide) .slide-inner{background:var(--paper);border-color:#dfe3dc}
.sirana-slide .slide-inner,.contact-slide .slide-inner{margin-top:2vh;margin-bottom:2vh;border-radius:26px;box-shadow:0 18px 50px rgba(0,0,0,.18)}
.sirana-slide .slide-inner:before{background:linear-gradient(90deg,var(--orange) 0 18%,var(--sage) 18% 54%,transparent 54%)}
.sirana-slide .slide-inner:before{background:linear-gradient(90deg,var(--orange) 0 18%,var(--sage) 18% 54%,transparent 54%)}
.contact-slide .slide-inner:before{background:linear-gradient(90deg,var(--navy) 0 18%,var(--orange) 18% 54%,transparent 54%)}
.slide-inner:after{content:"";position:absolute;right:4vw;top:22px;width:7px;height:7px;border-radius:50%;background:var(--orange);box-shadow:14px 0 0 var(--sage),28px 0 0 var(--navy)}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;padding-top:18px}
.section-heading:after{content:"";flex:1;max-width:230px;height:1px;background:var(--line);margin-bottom:11px}
.skills-overview{display:grid;grid-template-columns:1.35fr .85fr 1.2fr;gap:10px;margin:28px 0 30px;max-width:760px}
.hero-visual .skills-overview{display:flex;flex-direction:column;gap:10px;width:100%;max-width:480px;margin:32px 0 0;transform:none}
.hero-visual .skill-group{width:100%}
.skill-group{display:flex;gap:10px;align-items:flex-start;padding:14px 12px;border:1px solid var(--line);border-radius:4px 18px 4px 18px;background:var(--paper);box-shadow:0 8px 22px rgba(28,42,45,.05)}
.skill-group:nth-child(2){background:var(--sage-light)}
.skill-group:nth-child(3){background:#fff4ed}
.skill-icon{display:grid;place-items:center;flex:none;width:29px;height:29px;border-radius:50%;background:var(--navy);color:var(--cream);font:700 10px "Plus Jakarta Sans"}
.skill-group:nth-child(2) .skill-icon{background:var(--orange)}
.skill-group:nth-child(3) .skill-icon{background:var(--sage);color:var(--navy)}
.skill-group h3{margin:1px 0 9px;color:var(--navy);font-size:10px;letter-spacing:.03em;text-transform:uppercase}
.skill-tags{display:flex;flex-wrap:wrap;gap:4px}
.skill-tags span{padding:5px 6px;border:1px solid rgba(23,43,58,.14);border-radius:3px 8px 3px 8px;color:var(--navy-soft);font-size:8px;line-height:1.1;background:rgba(255,255,255,.55)}
.portrait-note{color:var(--orange);text-shadow:0 1px 5px rgba(0,0,0,.45)}
.portrait-note .note-arrow{color:var(--orange)}
.hero-visual .shape-sage{display:none}
