@font-face{font-family:Thmanyah;src:url(assets/sans.woff2);font-display:swap}@font-face{font-family:Thmanyah;src:url(assets/bold.woff2);font-weight:700;font-display:swap}@font-face{font-family:Display;src:url(assets/display.woff2);font-weight:700;font-display:swap}:root{--ink:#073f3b;--dark:#063d39;--mint:#73e6ca;--paper:#f3f7f2;--muted:#68827b}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Thmanyah,Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;color:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid #13bda1;outline-offset:6px}header{height:100px;position:absolute;inset:0 0 auto;z-index:5;padding:0 6%;display:flex;align-items:center;justify-content:space-between;color:#e7fff7;border-bottom:1px solid #ffffff20}.brand{font-weight:700;font-size:25px;line-height:1.3}.brand span{display:block;font:9px Arial;letter-spacing:3px;margin-top:5px}nav{display:flex;gap:36px;font-size:14px}nav a{position:relative}nav a:after{content:'';position:absolute;bottom:-8px;right:0;width:0;height:2px;background:var(--mint);transition:.3s}nav a:hover:after{width:100%}.nav-cta{border:1px solid #b2e6d85c;padding:12px 22px;border-radius:100px;font-size:14px}.nav-cta span{margin-right:25px}.hero{min-height:850px;height:100svh;max-height:1100px;background:radial-gradient(ellipse at 15% 60%,#13665b 0,transparent 53%),var(--dark);color:var(--paper);position:relative;display:grid;grid-template-columns:1.12fr 1fr;align-items:center;padding:145px 8% 115px;gap:6%;overflow:hidden}.hero-copy{position:relative;z-index:2}.eyebrow{font-size:13px;letter-spacing:.3px;display:flex;gap:12px;align-items:center;color:#afddce}.eyebrow i{width:7px;height:7px;border-radius:50%;background:var(--mint);box-shadow:0 0 0 5px #73e6ca15}h1,h2,h3,p{margin:0}h1,h2{font-family:Display,Thmanyah,serif;font-weight:700}h1{font-size:clamp(48px,5.5vw,84px);line-height:1.35;margin:28px 0 22px;letter-spacing:-2px}em{font-style:normal;color:#42bfa6}h1 em{color:var(--mint)}.hero p{line-height:2;font-size:16px;color:#bad6cc}.hero-actions{display:flex;gap:34px;align-items:center;margin-top:36px}.button{display:inline-flex;gap:35px;align-items:center;background:var(--mint);color:var(--ink);padding:17px 26px;border-radius:5px;font-size:14px;border:0;transition:transform .3s,background .3s}.button:hover{background:#a3f5df;transform:translateY(-4px)}.text-link{display:inline-flex;align-items:center;gap:24px;border:0;background:transparent;padding:10px 0;border-bottom:1px solid currentColor;font-size:14px}.hero-note{display:flex;align-items:center;gap:16px;font-size:11px;color:#91bbac;margin-top:60px}.line{height:1px;width:36px;background:#91bbac}.portrait-wrap{height:535px;position:relative;width:100%;max-width:410px;justify-self:center}.photo-frame{position:absolute;inset:0;border-radius:200px 200px 8px 8px;overflow:hidden;transform:rotate(-3deg);box-shadow:0 35px 80px #001d2650;animation:arrive 1.3s both}.photo-frame img{width:100%;height:100%;object-fit:cover;object-position:center 27%;transition:transform 1s}.photo-frame:hover img{transform:scale(1.04)}.image-shade{position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#002d2ac9)}.photo-caption{position:absolute;bottom:30px;right:30px;font-size:28px;font-family:Display}.photo-caption small{display:block;font:12px Thmanyah;margin-top:10px;color:#d9ece2}.orbit{position:absolute;inset:-22px 12px 22px -22px;border:1px solid #77c9b557;border-radius:230px 230px 8px 8px;transform:rotate(5deg)}.portrait-label{position:absolute;left:-39px;top:42%;writing-mode:vertical-rl;font:9px Arial;letter-spacing:3px;color:#b5d9cc}.portrait-label span{margin-top:20px;font-size:20px}.floating-mark{position:absolute;left:-36px;bottom:50px;width:100px;height:100px;display:flex;flex-direction:column;justify-content:center;align-items:center;background:var(--mint);color:var(--ink);font:22px Display;transform:rotate(8deg);border-radius:50%;animation:float 5s ease-in-out infinite}.scroll-cue{position:absolute;bottom:36px;right:8%;font-size:11px;display:flex;gap:35px;align-items:center}.scroll-cue span{font:25px Arial}.hero-index{position:absolute;bottom:40px;left:8%;font:9px Arial;letter-spacing:2px;color:#9fc8bb}.ribbon{padding:23px 0;overflow:hidden;background:#c3efdf;border-bottom:1px solid #afd5c7}.ribbon>div{display:flex;align-items:center;gap:50px;width:max-content;white-space:nowrap;animation:marquee 38s linear infinite;font-size:18px}.ribbon span{font-size:23px;color:#279a81}.section{padding:110px 8%}.section-label{font-size:12px;color:#559b88;margin-bottom:25px}.about{display:grid;grid-template-columns:1fr 3fr;gap:30px;border-bottom:1px solid #d6e2da}h2{font-size:clamp(34px,4vw,58px);line-height:1.5;letter-spacing:-1px}.about-bottom{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin:35px 0}.about p{font-size:15px;color:#587269;line-height:2.1}.interests{display:flex;flex-wrap:wrap;gap:10px}.interests span{border:1px solid #d2dfd6;border-radius:100px;padding:9px 17px;font-size:11px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px}.small-note{font-size:12px;color:var(--muted);padding-bottom:15px}.filters{display:flex;gap:10px;margin:30px 0}.filters button{border:1px solid #cadbd1;border-radius:30px;padding:10px 22px;background:transparent;font-size:12px}.filters .active{background:var(--ink);color:white;border-color:var(--ink)}.projects{display:grid;grid-template-columns:1fr 1fr;gap:45px 28px}.project[hidden]{display:none}.project-visual{width:100%;height:310px;border:0;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;transition:transform .4s}.project-visual:hover{transform:translateY(-5px)}.pharmacy{background:#cbe9dc}.mini-app{width:78%;background:#f7fdf9;box-shadow:0 15px 40px #13574428;text-align:left;border-radius:7px;transform:perspective(900px) rotateY(-9deg) rotateX(9deg);transition:.5s}.pharmacy:hover .mini-app{transform:perspective(900px) rotateY(0) rotateX(0)}.app-bar{padding:17px;font:9px Arial;border-bottom:1px solid #cfe5db;display:flex;justify-content:space-between}.app-bar i{font-size:7px;font-style:normal;color:#699c8b}.shelves{padding:16px 30px;background:#edf7f0}.shelves div{height:37px;border-bottom:4px solid #bedacd;margin-bottom:10px;background:repeating-linear-gradient(90deg,transparent 0 10px,#67bfa2 10px 24px,transparent 24px 27px,#e5b882 27px 37px,transparent 37px 49px,#91cbb5 49px 66px);background-size:100% 26px;background-repeat:no-repeat;background-position:bottom}.app-bottom{font:8px Arial;padding:14px 16px;display:flex;justify-content:space-between}.visual-index{position:absolute;bottom:16px;right:20px;font:10px Arial;letter-spacing:2px;opacity:.5}.journey{background:radial-gradient(at 50% 40%,#23746e,#062e31);color:#aaf5dd;gap:10px}.atom{position:relative;width:180px;height:180px;display:grid;place-items:center}.atom i{position:absolute;width:180px;height:75px;border:1px solid #75eac278;border-radius:50%;transform:rotate(60deg)}.atom i:nth-child(2){transform:rotate(-60deg)}.atom i:nth-child(3){transform:rotate(0)}.atom b{background:#7cebcf;color:#07433b;border-radius:50%;width:44px;height:44px;display:grid;place-items:center;box-shadow:0 0 45px #56d1ac;font:20px Georgia}.journey-title{font:24px Georgia;text-align:left}.journey-title strong{display:block;font-size:65px;font-weight:400}.journey-title span{display:block;font:7px Arial;letter-spacing:2px;margin-top:12px}.project-info{display:flex;justify-content:space-between;align-items:center;margin-top:19px}.project-info small{font-size:10px;color:#5f8a7b}.project-info h3{font-size:20px;margin-top:9px}.arrow{border:1px solid #cbdcd2;background:transparent;border-radius:50%;width:40px;height:40px;font-size:20px}.arrow:hover{background:#c3efdf}.content{background:#dfebe4;justify-content:space-around;text-align:right}.content-type{font:42px/1.4 Display}.content-type em{color:#238b76}.asterisk{font:110px Georgia;color:#309b83;animation:rotate 35s linear infinite}.portrait-section{position:relative;background:#e2eee6;display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center;overflow:hidden}.portrait-text p{margin:25px 0;line-height:2;color:#638276;font-size:14px}.gallery-photo{height:470px;border:0;padding:0;position:relative;background:#bad5c4;max-width:350px;width:100%;justify-self:center;transform:rotate(3deg)}.gallery-photo img{height:100%;width:100%;object-fit:cover;object-position:center 30%}.gallery-photo span{position:absolute;bottom:15px;left:15px;background:var(--paper);border-radius:50%;width:44px;height:44px;display:grid;place-items:center;font-size:23px}.vertical-word{position:absolute;left:2%;writing-mode:vertical-rl;font:70px Arial;letter-spacing:8px;color:#cfdfd3}.contact{background:var(--dark);color:white;position:relative;overflow:hidden;display:flex;justify-content:space-between;align-items:center}.contact h2{font-size:clamp(45px,5.5vw,80px)}.contact h2 em{color:var(--mint)}.contact p{color:#b3d1c5;line-height:2;margin:25px 0 30px}.contact-star{font:300px Georgia;color:#397d6d;animation:rotate 40s linear infinite}.contact .section-label{color:#8bc6b3}footer{padding:35px 8%;display:flex;align-items:center;justify-content:space-between;gap:20px}footer>span,footer>a:last-child{font-size:11px;color:#6d8a7d}.progress{height:3px;background:var(--mint);position:fixed;top:0;right:0;z-index:20;width:0}dialog{border:0;border-radius:12px;padding:55px 40px 40px;max-width:600px;width:90%;color:var(--ink);background:var(--paper)}dialog::backdrop{background:#001e21cb;backdrop-filter:blur(8px)}dialog h2{font-size:34px;margin:16px 0}dialog p{font-size:15px;line-height:2;margin:20px 0 30px}dialog small{color:#4b9582}.close{position:absolute;top:12px;left:15px;width:35px;height:35px;border:0;border-radius:50%;background:#dbeee4;font:26px Arial}#photo-dialog{padding:0;width:auto;max-height:90svh;background:transparent;overflow:visible}#photo-dialog img{display:block;max-height:87svh;max-width:85vw;border-radius:8px}#photo-dialog .close{z-index:2}.reveal{transition:opacity .8s,translate .8s}.js-motion .reveal:not(.visible){opacity:0;translate:0 25px}@keyframes float{50%{translate:0 -12px}}@keyframes rotate{to{rotate:360deg}}@keyframes marquee{to{transform:translateX(30%)}}@keyframes arrive{from{opacity:0;translate:0 25px}to{opacity:1;translate:0 0}}@media(min-width:1500px){.hero,.section{padding-right:max(8%,calc((100vw - 1300px)/2));padding-left:max(8%,calc((100vw - 1300px)/2))}}@media(max-width:900px){.hero{gap:5%;padding-left:6%;padding-right:6%;min-height:750px}h1{font-size:53px}.portrait-wrap{height:460px;max-width:330px}.floating-mark{width:80px;height:80px;left:-15px}.hero-note{gap:8px}.section{padding:80px 6%}.about{grid-template-columns:1fr}.about-bottom{gap:25px}.contact-star{font-size:220px}.project-visual{height:260px}.atom{scale:.8;width:130px}.journey-title{font-size:18px}.journey-title strong{font-size:50px}.content-type{font-size:32px}.asterisk{font-size:80px}.project-info h3{font-size:17px}}@media(max-width:600px){header{height:82px;padding:0 6%}.brand{font-size:22px}.brand span{font-size:7px}nav{gap:16px;font-size:11px}.nav-cta{padding:9px 13px;font-size:11px}.nav-cta span{display:none}.hero{height:auto;max-height:none;min-height:0;display:flex;flex-direction:column;padding:130px 7% 85px;gap:55px;align-items:stretch}.hero-copy{text-align:center}.eyebrow{justify-content:center;font-size:11px}h1{font-size:53px;letter-spacing:-1px;margin:20px 0}.hero p{font-size:13px}.hero-actions{justify-content:center;gap:24px;margin-top:26px}.button{padding:15px 20px;font-size:12px;gap:24px}.text-link{font-size:12px}.hero-note{justify-content:center;margin-top:28px;font-size:10px}.portrait-wrap{height:430px;width:77%;max-width:330px;align-self:center}.photo-caption{font-size:25px}.portrait-label{left:-28px;font-size:8px}.floating-mark{bottom:35px;left:-24px}.hero-index{font-size:7px;left:7%;bottom:27px}.scroll-cue{right:7%;bottom:20px}.ribbon{padding:16px 0}.ribbon>div{font-size:14px;gap:30px}.section{padding:65px 7%}.section-label{font-size:11px;margin-bottom:20px}h2{font-size:36px}.about-bottom{grid-template-columns:1fr;gap:18px;margin:22px 0}.about p{font-size:13px}.interests span{font-size:10px;padding:7px 12px}.section-heading{display:block}.small-note{display:block;font-size:10px;margin-top:16px}.filters{gap:6px;margin-top:22px}.filters button{font-size:10px;padding:9px 15px}.projects{grid-template-columns:1fr;gap:32px}.project-visual{height:270px}.project-info h3{font-size:19px}.portrait-section{grid-template-columns:1fr;gap:38px}.gallery-photo{height:420px;max-width:280px}.vertical-word{display:none}.portrait-text p{font-size:13px}.contact h2{font-size:50px}.contact p{font-size:13px}.contact-star{position:absolute;left:-55px;top:75px;font-size:190px;opacity:.25;pointer-events:none}.contact>div{position:relative;z-index:1}footer{padding:28px 7%;flex-wrap:wrap}footer>span{order:3;width:100%;font-size:10px}dialog{padding:50px 25px 25px}dialog h2{font-size:28px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-motion .reveal:not(.visible){opacity:1;translate:none}}
.actual-work{height:auto;aspect-ratio:16/10;background:#e4ece7;border:1px solid #d7e5dc}.actual-work img{width:100%;height:100%;object-fit:contain;transition:transform .65s}.actual-work:hover img{transform:scale(1.045)}.work-overlay{position:absolute;bottom:15px;left:15px;background:#073f3be8;color:white;padding:10px 18px;border-radius:30px;font-size:11px;opacity:0;translate:0 8px;transition:.3s}.actual-work:hover .work-overlay,.actual-work:focus-visible .work-overlay{opacity:1;translate:0}.portfolio-download{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #ccdcd2;margin-top:45px;padding-top:30px}.portfolio-download>span{font-size:17px}.work-dialog{width:min(1100px,94vw);max-width:1100px;max-height:94svh;overflow:auto}.work-dialog h2{font-size:28px;margin:8px 0 18px}.work-viewer{background:#fff;border:1px solid #d5e1d8}.work-viewer img{width:100%;max-height:62svh;object-fit:contain;display:block}.viewer-controls{display:flex;justify-content:center;align-items:center;gap:30px;background:#e3efe7;padding:10px}.viewer-controls button{border:1px solid #aecdbd;border-radius:50%;height:36px;width:36px;background:transparent}.viewer-controls button:disabled{opacity:.25;cursor:default}.viewer-controls span{font:12px Arial}.work-dialog p{margin:15px 0 0;font-size:12px}.filters{flex-wrap:wrap}@media(max-width:600px){.portfolio-download{flex-direction:column;align-items:start}.work-dialog{padding:45px 12px 15px}.work-dialog h2{font-size:23px}.actual-work .work-overlay{opacity:1;translate:0;font-size:9px;padding:7px 12px}}
.portrait-wrap{height:580px;max-width:460px}.portrait-wrap:before{content:'';position:absolute;width:390px;height:390px;max-width:95%;background:radial-gradient(circle at 35% 30%,#a0f5d8,#38b99e 55%,#0e766c);border-radius:50%;top:100px;left:50%;transform:translateX(-50%);box-shadow:0 0 100px #61dbb72a}.photo-frame{inset:-5px -15px -20px;transform:none!important;border-radius:0;box-shadow:none;overflow:hidden;mask-image:linear-gradient(#000 85%,transparent 100%)}.photo-frame img{height:100%;width:100%;object-fit:contain;object-position:center top;filter:drop-shadow(-16px 12px 14px #001f2945)}.image-shade,.photo-caption{display:none}.orbit{inset:70px -8px 50px;border-radius:50%;transform:rotate(-20deg);border-color:#8ae9cf60}.portrait-label{left:-25px;top:40%;z-index:2}.floating-mark{z-index:3;bottom:65px;left:0;background:#cbf9e6;box-shadow:0 10px 40px #022e3c33}.hero{min-height:880px}.hero-copy{z-index:4}@media(max-width:900px){.portrait-wrap{height:490px;max-width:350px}.portrait-wrap:before{width:310px;height:310px;top:100px}.hero{min-height:800px}.orbit{inset:80px -10px 50px}}@media(max-width:600px){.hero{min-height:0;gap:35px}.portrait-wrap{height:460px;width:95%;max-width:350px}.portrait-wrap:before{width:300px;height:300px;top:85px}.photo-frame{inset:0 -6px -10px}.portrait-label{left:-6px}.floating-mark{left:5px;bottom:50px}.orbit{inset:60px 10px 45px}.hero h1{font-size:50px}}
/* Editorial portfolio refinement */
header{position:fixed;height:88px;transition:background .35s,height .35s,box-shadow .35s}header.scrolled,header.menu-open{background:#063d39ed;backdrop-filter:blur(22px);height:74px;box-shadow:0 8px 35px #00282218}nav{gap:26px}nav .current{color:var(--mint)}nav .current:after{width:100%}.menu-toggle{display:none}.hero{background:radial-gradient(ellipse at 17% 58%,#166e61 0,transparent 55%),#043c38}.hero:before{content:'';position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(#9bebcf07 1px,transparent 1px),linear-gradient(90deg,#9bebcf07 1px,transparent 1px);background-size:80px 80px;mask-image:linear-gradient(transparent,#000 40%,transparent)}.hero h1{font-size:clamp(58px,6.4vw,96px);line-height:1.3}.hero-copy{animation:arrive 1s both}.hero .eyebrow{font-size:12px}.hero-metrics{display:flex;gap:28px;margin-top:35px;padding-top:25px;border-top:1px solid #a4dbc323;align-items:center}.hero-metrics>span{font-size:10px;color:#a9ccbd}.hero-metrics b{display:block;font:28px Georgia;color:#e1f8ed;margin-bottom:7px}.hero-metrics .handwritten{font:22px Display;color:#71ccaf;max-width:90px}.hero-note{margin-top:24px}.portrait-wrap{isolation:isolate}.portrait-wrap:before{animation:glow 7s ease-in-out infinite}.portrait-label{letter-spacing:2px}.floating-mark{background:#b9f4dc}.section-label{letter-spacing:.5px}.about{padding-top:90px;padding-bottom:90px}.websites{background:#082f2f;color:#effaf4;position:relative;overflow:hidden}.websites:before{content:'';position:absolute;top:0;left:0;width:70%;height:700px;background:radial-gradient(ellipse at top left,#247b6650,transparent 65%);pointer-events:none}.websites .section-heading{position:relative;align-items:center}.websites h2 em{color:#81ddbf}.websites .section-label{color:#8fb9aa}.web-intro{font-size:13px;line-height:2;color:#9fc4b6}.website-grid{margin-top:55px;display:grid;grid-template-columns:1fr 1fr;gap:48px 30px}.website-card{min-width:0}.featured-site{grid-column:1/-1;display:grid;grid-template-columns:1.35fr 1fr;gap:5%;align-items:center;padding-bottom:45px;border-bottom:1px solid #b6e1ca20}.site-shot{border:1px solid #b8e4d030;padding:0;width:100%;background:#e3eeea;position:relative;border-radius:10px;overflow:hidden;display:block;transition:transform .4s,box-shadow .4s;transform:perspective(1100px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));box-shadow:0 15px 50px #001c2730;text-align:initial}.site-shot:hover{box-shadow:0 25px 60px #00181d80}.browser-chrome{background:#e1eae5;color:#5e7c70;display:flex;justify-content:space-between;align-items:center;padding:12px 16px;font:9px Arial;direction:ltr;gap:8px}.browser-dots{font-size:9px;color:#93afa1;letter-spacing:3px}.screenshot-window{aspect-ratio:1.6;overflow:hidden;background:#eaf3ee}.screenshot-window img{width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .7s}.site-shot:hover img{transform:scale(1.035)}.preview-hint{position:absolute;bottom:15px;left:15px;border-radius:30px;padding:9px 16px;background:#073b32ed;color:#e6fff4;font-size:10px;opacity:0;translate:0 8px;transition:.3s}.site-shot:hover .preview-hint,.site-shot:focus-visible .preview-hint{opacity:1;translate:0}.site-copy{padding:22px 0 0}.site-kicker{display:flex;justify-content:space-between;gap:15px;align-items:center;color:#7caa98;font-size:10px}.site-kicker b{font:12px Georgia;color:#c5dfd4}.site-copy h3{font:29px/1.7 Display;margin:10px 0 0}.site-en{font:10px Arial;letter-spacing:1.8px;color:#80ab99;display:inline-block;margin:6px 0 12px}.site-copy p{font-size:13px;line-height:2.1;color:#a5c2b5;max-width:48ch}.site-actions{display:flex;gap:24px;align-items:center;margin-top:22px}.visit-site{font-size:12px;color:#b9f6d8;display:inline-flex;gap:28px;padding:11px 0;border-bottom:1px solid #74c1a676}.visit-site span{transition:translate .3s}.visit-site:hover span{translate:-4px -4px}.site-details{font-size:11px;color:#9dbfac;border:0;background:transparent;padding:11px 0}.site-details:hover{color:white}.featured-site .site-copy{padding:0}.featured-site h3{font-size:37px}.access-note{font-size:10px;color:#7caa98;border-top:1px solid #b6e1ca20;padding-top:20px;margin-top:50px}.work{background:#f1f5ef}.work .section-heading{align-items:center}.project-visual{border-radius:8px}.actual-work{transform:perspective(1100px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));height:auto;aspect-ratio:16/10}.actual-work:hover{transform:perspective(1100px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg))}.projects{gap:45px 30px}.project-info h3{font-family:Display;font-size:25px}.project-info small{font-size:10px}.filters{gap:8px;margin:35px 0}.filters button{transition:background .25s,color .25s,translate .25s}.filters button:hover{translate:0 -2px;background:#d0e9dc}.filters .active:hover{background:#073f3b}.portfolio-download{padding:28px;background:#e2eee5;border:1px solid #cedfd1;border-radius:8px}.portfolio-download>span{font-family:Display;font-size:25px}.portrait-section{background:#dcebe1}.gallery-photo{box-shadow:15px 20px 0 #c5dfcf,0 30px 70px #254c3920;border-radius:4px;overflow:hidden}.process{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start;background:#f6f8f2}.process>div>p{font-size:13px;line-height:2;color:#6b8778;margin-top:24px}.process-steps details{border-top:1px solid #ccddd1;padding:23px 0}.process-steps details:last-child{border-bottom:1px solid #ccddd1}.process-steps summary{display:flex;align-items:center;gap:25px;list-style:none;cursor:pointer;font-size:19px}.process-steps summary::-webkit-details-marker{display:none}.process-steps summary>span{font:12px Georgia;color:#6ca18b}.process-steps summary b{margin-right:auto;font:23px Arial;font-weight:400;transition:rotate .3s}.process-steps details[open] summary b{rotate:45deg}.process-steps details>p{font-size:13px;line-height:2.2;color:#5d7b6a;margin:18px 40px 0 0}.contact{display:block}.contact>div{position:relative;z-index:1}.contact-star{position:absolute;left:10%;top:25%;font-size:260px;color:#36827055;pointer-events:none}.copy-handle{margin-top:22px;display:flex;gap:25px;padding:12px 0;background:transparent;border:0;border-bottom:1px solid #90bfa747;font-size:12px;color:#a9ceba;position:relative;z-index:1}.copy-handle span{font:12px Arial}#copy-status{display:block;font-size:11px;color:#9fe4bf;margin-top:8px;min-height:20px}.site-modal-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:35px;align-items:center}.site-modal-grid>img{width:100%;border-radius:7px;border:1px solid #d4e3d7}.site-dialog h2{font-size:32px}.site-dialog p{font-size:13px;margin:10px 0 20px}.site-dialog h3{font-size:13px}.site-dialog ul{font-size:12px;line-height:2.2;padding-right:18px;margin:12px 0 25px}.site-dialog li::marker{color:#24aa85}.site-dialog .button{padding:14px 20px;font-size:12px}.viewer-controls span{direction:ltr}footer{background:#e9f1e8}@keyframes glow{50%{box-shadow:0 0 120px #61dbb740;filter:brightness(1.07)}}
@media(max-width:1000px){nav{gap:19px}.hero h1{font-size:67px}.hero-metrics{gap:20px}.hero-metrics .handwritten{display:none}.featured-site{grid-template-columns:1.2fr 1fr;gap:25px}.featured-site h3{font-size:30px}.site-copy h3{font-size:25px}.site-copy p{font-size:12px}.site-en{font-size:9px}.process{gap:6%}.process h2{font-size:37px}.site-modal-grid{grid-template-columns:1fr;gap:20px}.site-modal-grid>img{order:-1;max-height:300px;object-fit:contain;background:white}}
@media(max-width:700px){header,header.scrolled{height:76px;padding:0 6%}.menu-toggle{display:flex;flex-direction:column;gap:6px;width:38px;height:38px;border:1px solid #94c9b451;border-radius:50%;background:transparent;justify-content:center;align-items:center;color:white}.menu-toggle span{height:1px;width:14px;background:currentColor;transition:transform .25s}.menu-open .menu-toggle span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-open .menu-toggle span:last-child{transform:translateY(-3.5px) rotate(-45deg)}header .nav-cta{margin-right:auto;margin-left:14px;padding:9px 17px}header .brand{font-size:23px}#main-nav{display:none;position:absolute;top:75px;left:0;right:0;background:#063d39f7;backdrop-filter:blur(20px);padding:20px 7% 30px;border-bottom:1px solid #8ce0be30;flex-direction:column;gap:0}.menu-open #main-nav{display:flex}#main-nav a{font-size:18px;padding:13px 0}#main-nav a:after{display:none}.hero{padding-top:125px;padding-bottom:75px}.hero h1{font-size:60px;line-height:1.35}.hero .eyebrow{font-size:10px}.hero-metrics{justify-content:center;gap:45px;margin-top:28px;padding-top:22px}.hero-metrics b{font-size:25px}.hero-note{margin-top:20px}.hero .portrait-wrap{height:460px}.hero p{font-size:13px}.section{padding:65px 7%}.web-intro{margin-top:20px;font-size:12px}.website-grid{grid-template-columns:1fr;gap:35px;margin-top:30px}.featured-site{display:block;grid-column:auto;padding-bottom:30px}.featured-site .site-copy{padding-top:20px}.site-copy h3,.featured-site h3{font-size:29px}.site-copy p{font-size:13px;max-width:none}.site-shot .preview-hint{opacity:1;translate:0;font-size:9px}.site-kicker{font-size:9px}.site-actions{gap:30px}.site-en{font-size:9px}.access-note{margin-top:30px;line-height:1.8}.project-info h3{font-size:23px}.portfolio-download{padding:23px}.portfolio-download>span{font-size:23px}.process{grid-template-columns:1fr;gap:30px}.process-steps summary{font-size:19px}.process>div>p{margin-top:15px}.site-modal-grid>img{max-height:230px}.site-dialog h2{font-size:27px}.contact-star{left:-60px;top:70px;font-size:240px}.portrait-section{gap:42px}.hero-metrics .handwritten{display:none}}@media(prefers-reduced-motion:reduce){.site-shot,.actual-work{transform:none!important}}
@media(max-width:700px){header .brand{order:0}header .nav-cta{order:1;margin-right:auto;margin-left:14px}header .menu-toggle{order:2}.browser-chrome{font-size:8px;padding:11px 12px}.hero h1{font-size:54px}.hero-metrics{margin-top:22px;padding-top:18px}.hero .eyebrow{line-height:1.7}}
/* Refined personal portrait section */
.portrait-section{background:#e4efe7;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8%;padding-top:85px;padding-bottom:85px;align-items:center;isolation:isolate}.portrait-text{max-width:540px}.portrait-text .section-label{margin-bottom:25px;color:#588d7a}.portrait-text h2{font-size:clamp(38px,4.2vw,61px);line-height:1.5;letter-spacing:-.8px}.portrait-text h2 em{color:#218e79}.portrait-text .portrait-bio{max-width:400px;font-size:15px;line-height:2.15;color:#57776a;margin:24px 0 28px}.portrait-signature{padding:18px 0 18px 22px;border-top:1px solid #c6dccd;max-width:400px}.portrait-signature>span{font:25px Display;color:#164f42}.portrait-signature small{font:11px Thmanyah;display:block;color:#718e7f;margin-top:7px}.portrait-text .text-link{font-size:12px;margin-top:5px;gap:30px;border-bottom-color:#a4c8b4}.gallery-photo{height:490px;max-width:420px;transform:none;translate:none;border-radius:180px 180px 12px 12px;box-shadow:none;overflow:hidden;background:linear-gradient(150deg,#d1e7da,#b3d9c7);isolation:isolate;justify-self:center;position:relative;border:1px solid #bad7c6}.gallery-photo:before{content:'';position:absolute;inset:14px;border:1px solid #effff19c;border-radius:170px 170px 7px 7px;z-index:0;pointer-events:none}.gallery-photo .portrait-halo{display:block;position:absolute;inset:auto;top:52px;left:50%;translate:-50% 0;width:275px;height:275px;border-radius:50%;background:radial-gradient(circle,#effff0a8,#d9efe100);z-index:0}.gallery-photo img{position:absolute;left:50%;bottom:0;translate:-50% 0;width:auto;height:96%;max-width:95%;object-fit:contain;object-position:bottom;z-index:1;filter:drop-shadow(0 12px 14px #134e3920);transition:scale .6s;transform-origin:50% 100%}.gallery-photo:hover img{scale:1.025}.gallery-photo:after{content:'';position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#073d34d9);z-index:2;pointer-events:none}.gallery-photo .gallery-zoom{position:absolute;left:22px;bottom:22px;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#edfff4;color:#124b3e;font:22px Arial;z-index:3}.gallery-photo .portrait-credit{position:absolute;bottom:24px;right:25px;left:auto;display:block;width:auto;height:auto;border-radius:0;background:transparent;color:#effff7;font:12px Arial;letter-spacing:2px;text-align:right;z-index:3}.portrait-credit small{display:block;font:7px Arial;letter-spacing:1.2px;margin-top:7px;color:#bcdfcc}#photo-dialog{background:#d9ebe0;border-radius:10px;overflow:hidden}#photo-dialog img{max-height:87svh;padding:20px 20px 0;width:auto;max-width:85vw;object-fit:contain}@media(max-width:900px){.portrait-section{gap:6%;padding-top:65px;padding-bottom:65px}.gallery-photo{height:430px;width:100%;max-width:350px}.portrait-text h2{font-size:42px}.portrait-text .portrait-bio{font-size:13px}}@media(max-width:600px){.portrait-section{grid-template-columns:1fr;padding:58px 7% 65px;gap:30px}.portrait-text{max-width:100%}.portrait-text h2{font-size:39px;line-height:1.5}.portrait-text .section-label{margin-bottom:17px}.portrait-text .portrait-bio{margin:18px 0 20px;max-width:100%;font-size:13px}.portrait-signature{padding-top:15px;padding-bottom:12px}.portrait-signature>span{font-size:23px}.portrait-text .text-link{margin-top:0}.gallery-photo{height:410px;width:100%;max-width:330px;justify-self:center}.gallery-photo img{height:96%}.gallery-photo .portrait-credit{font-size:10px;right:22px}.gallery-photo .portrait-credit small{font-size:6px}}
.pharmacy-shelves-preview .screenshot-window{aspect-ratio:1.5}.pharmacy-shelves-preview .screenshot-window img{object-fit:cover;object-position:center 40%}.shelves-caption{position:absolute;bottom:15px;right:15px;background:#063d39e8;color:#e5f9ef;padding:8px 12px;border-radius:5px;font-size:9px;pointer-events:none}.pharmacy-shelves-preview .preview-hint{bottom:50px}@media(max-width:600px){.pharmacy-shelves-preview .screenshot-window{aspect-ratio:1.35}.shelves-caption{font-size:8px;bottom:12px;right:12px}}
/* Clean project presentation */
.website-grid{gap:52px 34px}.website-card{position:relative}.site-shot{border-radius:14px;border:1px solid #acd7c328;box-shadow:0 18px 48px #001b222b}.screenshot-window{aspect-ratio:1.62}.featured-site{gap:6%;padding-bottom:50px;margin-bottom:3px}.featured-site .site-shot{border-radius:16px}.featured-site .screenshot-window{aspect-ratio:1.55}.site-copy{padding:25px 2px 0}.site-kicker{font-size:10px;line-height:1.8;gap:20px}.site-kicker b{width:30px;height:30px;display:grid;place-items:center;border:1px solid #a7d0ba32;border-radius:50%;font-size:10px;flex-shrink:0}.site-copy h3{margin-top:14px;line-height:1.6}.site-copy p{line-height:2.1;color:#aec9bc}.site-actions{margin-top:26px}.visit-site{display:inline-flex;align-items:center;gap:30px;padding:12px 19px;border:1px solid #81c8ab70;border-radius:6px;font-size:12px;color:#c9f5df;background:#173e3838;transition:background .25s,translate .25s,border-color .25s}.visit-site:hover{background:#b3ebce;color:#073a31;border-color:#b3ebce;translate:0 -2px}.featured-site .visit-site{background:#a7e9c9;color:#073a31;border-color:#a7e9c9}.featured-site .visit-site:hover{background:#d3f9e5}.preview-hint{font-size:10px;backdrop-filter:blur(8px)}.shelves-caption{background:#063d39d9;font-size:8px;letter-spacing:.15px;padding:7px 10px}.access-note{max-width:100%;line-height:1.8}.site-dialog .button{border-radius:6px;padding:14px 23px}@media(max-width:700px){.website-grid{gap:36px}.featured-site{padding-bottom:34px}.site-copy,.featured-site .site-copy{padding-top:20px}.site-actions{margin-top:20px}.visit-site{padding:12px 18px;min-height:44px}.site-copy h3,.featured-site h3{font-size:28px}.featured-site .screenshot-window{aspect-ratio:1.4}.site-kicker{font-size:9px}.site-kicker b{width:26px;height:26px}}
