@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&family=Vazirmatn:wght@400;500;600;700&display=swap');
:root{font-family:'DM Sans',Arial,sans-serif;color:#162d2e;background:#fff;--accent:#087e7c;--ink:#162d2e;--muted:#5b6b6c;--line:#dce5e4;--pale:#eef7f5;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0}button,input,select,textarea{font:inherit}a{color:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}a{text-underline-offset:4px}a:focus-visible,button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #087e7c;outline-offset:5px}.skip-link{position:absolute;top:-100px;left:20px;padding:12px;background:white;z-index:10}.skip-link:focus{top:10px}header{max-width:1392px;margin:auto;padding:14px 56px;min-height:102px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{position:relative;display:block;flex:none;width:204px;height:66px;overflow:hidden;direction:ltr}.brand img{position:absolute;width:322px;height:auto;max-width:none;left:-57px;top:-48px}.site-nav{display:flex;gap:26px;align-items:center}.site-nav a{text-decoration:none;font-size:15px;padding:10px 0}.site-nav a:hover{color:var(--accent)}.language-nav{display:flex;align-items:center;gap:9px}.language-nav label{position:absolute;width:1px;height:1px;clip:rect(0,0,0,0);overflow:hidden}.language-nav select{border:1px solid var(--line);background:#fff;border-radius:5px;padding:10px 12px;color:var(--ink);font-size:14px;max-width:165px;cursor:pointer}main{max-width:1392px;margin:auto;padding:0 56px}.personal-hero{display:grid;grid-template-columns:1.1fr 1fr;gap:65px;align-items:center;padding:76px 0 72px}.eyebrow{font-size:12px;font-weight:700;letter-spacing:1.7px;text-transform:uppercase;color:var(--accent);margin:0 0 24px;line-height:1.6}h1,h2,h3,p{overflow-wrap:break-word}h1{font-family:Manrope,Arial,sans-serif;font-size:clamp(38px,4.4vw,64px);font-weight:600;line-height:1.12;letter-spacing:-2.8px;margin:0;max-width:690px}.lead{font-size:18px;line-height:1.8;color:var(--muted);max-width:550px;margin:24px 0 30px}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:22px}.primary{display:inline-flex;justify-content:center;align-items:center;background:var(--accent);color:white;border:1px solid var(--accent);border-radius:4px;padding:14px 21px;font-size:15px;font-weight:600;text-decoration:none;line-height:1.5;transition:background .15s}.primary:hover{background:#076565}.secondary{font-size:15px;font-weight:500;text-decoration:none;border-bottom:1px solid #839998;padding:7px 0}.secondary:hover{color:var(--accent)}.location-line{font-size:14px;color:var(--muted);margin:28px 0 0}.brand-panel{border:1px solid var(--line);border-radius:6px;overflow:hidden;min-height:320px;display:flex;flex-direction:column;justify-content:space-between;background:#fff;box-shadow:18px 18px 0 var(--pale)}.panel-index{padding:24px 26px 0;color:#617675;font-size:12px;letter-spacing:2px;direction:ltr}.brand-panel img{display:block;width:100%;height:auto;margin:0;aspect-ratio:2;object-fit:contain}.panel-bottom{padding:19px 24px;display:flex;gap:18px;align-items:center;justify-content:space-between;border-top:1px solid var(--line);background:#f8fbfa;font-size:13px;color:var(--muted);line-height:1.6}.panel-bottom span:last-child{font-size:11px;letter-spacing:.8px;direction:ltr}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:30px}.section-heading .eyebrow{margin-bottom:10px}.section-heading h2{font-family:Manrope,Arial,sans-serif;font-size:34px;font-weight:500;letter-spacing:-1px;margin:0;line-height:1.3}.section-heading>p{font-size:16px;line-height:1.7;color:var(--muted);max-width:380px;margin:0}.projects-section{padding:24px 0 68px}.project-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:20px}.project-card{border:1px solid var(--line);border-radius:6px;padding:28px;display:flex;flex-direction:column;min-width:0;background:#fff}.featured-project{background:var(--pale);border-color:#c9e3dc}.project-top{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.status{font-size:12px;border:1px solid #d5dfde;border-radius:20px;padding:5px 10px;line-height:1.5;color:#556365;background:#f6f8f8}.status.available{background:#d6ede5;color:#185645;border-color:#b7d9cc}.project-kind{font-size:11px;letter-spacing:1.3px;color:var(--muted)}.project-mark{font-family:Georgia,serif;font-size:74px;letter-spacing:-4px;line-height:1.1;margin:37px 0 26px;color:var(--ink);direction:ltr;text-align:start}.project-mark span{color:var(--accent);font-style:italic}.featured-project .project-mark{font-size:56px;letter-spacing:-2px;padding-top:19px}.project-card h3{font-size:19px;line-height:1.4;font-weight:600;margin:0 0 10px}.project-card p{color:var(--muted);font-size:16px;line-height:1.65;margin:0 0 30px}.project-links{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:auto;padding-top:18px;border-top:1px solid var(--line)}.project-links a{font-size:14px;text-decoration:none;line-height:1.7;font-weight:500}.project-links a:hover{text-decoration:underline}.demo-link{color:var(--accent)}.hospitality-section{border-top:1px solid var(--line);padding-top:40px;scroll-margin-top:10px}.hero{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:stretch;padding:0 0 36px}.intro{display:flex;flex-direction:column;justify-content:center}.intro .eyebrow{margin-bottom:14px}#headline{font-size:38px;font-family:Manrope,Arial,sans-serif;font-weight:500;line-height:1.2;letter-spacing:-1px;margin:0}#headline em{font-style:normal;color:var(--accent)}.subhead{font-size:16px;color:var(--muted);line-height:1.8;max-width:480px;margin:20px 0}.hero-bottom{font-size:14px;color:var(--muted);line-height:1.6}figure{position:relative;margin:0;min-height:270px;overflow:hidden;border-radius:6px;background:#274440}figure img{position:absolute;width:100%;height:100%;object-fit:cover}figure:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 45%,#142723d9)}figcaption{position:absolute;z-index:1;bottom:22px;inset-inline:24px;color:white;font-size:16px}.section-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:8px 0 22px}.section-top h2{font-size:21px;font-weight:500;margin:0}.section-top span{color:var(--muted);font-size:14px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.service{border:1px solid var(--line);border-radius:5px;background:#fff;text-align:start;display:flex;flex-direction:column;min-width:0;padding:24px;transition:border-color .15s,background .15s}.service:hover{border-color:var(--accent);background:#f8fbfa}.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:23px}.card-top svg{width:26px;height:26px;fill:none;stroke:var(--accent);stroke-width:1.5}.number{font-size:12px;color:#6a7b79}.service h3{font-size:20px;line-height:1.4;font-weight:500;margin:0 0 10px}.service p{font-size:16px;line-height:1.65;color:var(--muted);margin:0 0 20px}.card-end{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:14px;color:var(--muted)}.card-end span:last-child{font-size:22px;color:var(--accent)}.ask-strip{margin:26px 0 0;padding:32px 36px;background:#133e3e;color:#fff;border-radius:5px;display:flex;align-items:center;justify-content:space-between;gap:30px}.ask-strip .eyebrow{color:#8bd3c8;margin-bottom:9px}.ask-strip h2{font-size:26px;font-weight:500;line-height:1.4;margin:0 0 10px}.ask-strip p{font-size:16px;line-height:1.6;color:#c2d6d3;margin:0}.ask-strip .primary{background:#e0f3ed;color:#143e3e;border:0;flex-shrink:0}.lab-section{padding:70px 0}.lab-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.lab-grid .project-mark{font-family:'DM Sans',Arial,sans-serif;font-size:14px;letter-spacing:2px;margin:25px 0;color:var(--accent)}.lab-grid .project-card{background:#fafbfb}.about-section{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1.2fr;gap:80px;padding:50px 0}.about-section h2{font-family:Georgia,serif;font-weight:400;font-size:40px;margin:0;line-height:1.3}.about-fullname{display:block;font-family:'DM Sans',Arial,sans-serif;font-size:14px;color:var(--muted);margin-top:13px}.about-section p{font-size:16px;line-height:1.9;color:var(--muted)}.about-section .about-lead{font-size:20px;color:var(--ink);margin-top:0}.contact-section{display:flex;justify-content:space-between;align-items:start;gap:50px;padding:50px 0 30px}.contact-section .eyebrow{margin-bottom:10px}.contact-name{font-size:27px;font-weight:500}.contact-location{font-size:15px;color:var(--muted)}.contact-links{display:flex;flex-wrap:wrap;gap:24px 35px}.contact-links a{display:flex;flex-direction:column;gap:9px;font-size:16px;text-decoration:none;overflow-wrap:anywhere}.contact-links span{color:var(--muted);font-size:14px}.contact-links bdi{font-weight:500}.contact-links a:hover bdi{color:var(--accent)}.message-section{display:grid;grid-template-columns:1fr 1.3fr;gap:70px;padding:20px 0 48px}.message-section h2{font-size:28px;font-weight:500;margin:0 0 13px}.message-section p{font-size:15px;color:var(--muted);line-height:1.8;max-width:390px}#contact-form label{display:flex;flex-direction:column;gap:9px;font-size:14px;margin-bottom:18px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}input,textarea{width:100%;min-width:0;background:#fafcfc;border:1px solid #bacdca;border-radius:4px;color:var(--ink);padding:12px;font-size:16px}textarea{resize:vertical}#message-status:empty{display:none}footer{display:flex;justify-content:space-between;gap:20px;padding:22px 0 30px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}dialog{width:calc(100% - 32px);max-width:690px;max-height:85dvh;padding:45px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);box-shadow:0 25px 80px #0003}dialog::backdrop{background:#072e2f99;backdrop-filter:blur(4px)}.close{position:absolute;inset-inline-end:12px;top:8px;background:none;border:0;padding:5px 12px;font-size:30px}.pill{font-size:12px;font-weight:600;color:var(--accent);line-height:1.6}dialog h2{font-size:31px;font-weight:500;line-height:1.3;margin:18px 0}dialog h3{font-size:19px}dialog p,dialog li{font-size:16px;line-height:1.85;color:var(--muted)}dialog ul{padding-inline-start:23px}dialog li{margin-bottom:10px}.note{background:var(--pale);padding:16px 18px;border-inline-start:3px solid var(--accent);font-size:15px!important}.dialog-lead{font-size:20px!important;color:var(--ink)}.inline-link{margin-top:12px;margin-inline-end:15px}.faq{border-top:1px solid var(--line);padding:18px 0}.faq summary{cursor:pointer;font-size:17px;line-height:1.6}.faq p{margin-bottom:0}html[dir=rtl]{font-family:Vazirmatn,Arial,sans-serif}html[dir=rtl] h1,html[dir=rtl] h2,html[dir=rtl] #headline{font-family:Vazirmatn,Arial,sans-serif;letter-spacing:0;line-height:1.65}html[dir=rtl] .eyebrow{letter-spacing:0}html[dir=rtl] h1{font-size:clamp(35px,4vw,54px)}html[dir=rtl] .about-section h2{font-family:Georgia,serif;line-height:1.3}html:lang(ko) h1,html:lang(zh) h1,html:lang(ja) h1{font-family:Arial,sans-serif;letter-spacing:-.5px;line-height:1.4}html:lang(ko) h1{word-break:keep-all}
@media(min-width:1400px){.personal-hero{min-height:530px}}@media(max-width:1100px){header,main{padding-inline:32px}.site-nav{gap:17px}.personal-hero{gap:36px;padding:55px 0}.brand-panel{min-height:280px}.project-card{padding:23px}.project-grid{gap:14px;grid-template-columns:1fr 1fr}.featured-project{grid-column:span 2;display:grid;grid-template-columns:1fr 1fr;column-gap:36px}.featured-project .project-top{grid-column:span 2}.featured-project .project-mark{grid-row:span 3;font-size:70px;align-self:center;padding:0}.featured-project h3{margin-top:25px}.featured-project .project-links{grid-column:2}.contact-links{flex-direction:column}.panel-bottom{flex-direction:column;align-items:start;gap:7px}.hero{gap:35px}.about-section{gap:40px}}@media(max-width:780px){header{flex-wrap:wrap;gap:5px 15px;padding-block:8px}.site-nav{order:3;flex:1 0 100%;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding-top:3px}.site-nav a{font-size:14px}.brand{width:185px}.language-nav select{max-width:143px}.personal-hero{grid-template-columns:1fr;gap:30px;padding:36px 0 45px}.personal-copy{max-width:620px}h1{font-size:48px}.brand-panel{min-height:0;max-width:580px;box-shadow:10px 10px 0 var(--pale)}.brand-panel img{max-height:210px;object-fit:cover}.panel-bottom{flex-direction:row;align-items:center}.section-heading{align-items:start;flex-direction:column;gap:15px}.section-heading>p{max-width:580px}.cards{grid-template-columns:repeat(2,1fr)}.hero{grid-template-columns:1fr;gap:28px}.hero figure{min-height:220px}.ask-strip{align-items:start;flex-direction:column;padding:28px}.lab-section{padding:45px 0}.about-section{grid-template-columns:1fr;gap:24px;padding:35px 0}.about-section .eyebrow{margin-bottom:14px}.contact-section{padding-top:35px}.message-section{grid-template-columns:1fr;gap:18px}.contact-links{gap:23px}.projects-section{padding-bottom:45px}.featured-project .project-mark{font-size:62px}.project-card{padding:22px}#headline{font-size:34px}}
@media(max-width:500px){header,main{padding-inline:20px}.brand{width:170px}.brand img{width:290px;left:-52px;top:-40px}.brand-panel{margin-inline-end:10px}.panel-bottom{padding:15px;gap:13px}.panel-bottom span:last-child{max-width:92px;line-height:1.8}.panel-index{padding:18px 18px 0}h1{font-size:41px;letter-spacing:-1.5px}.lead{font-size:17px}.hero-actions{gap:15px}.primary{padding:12px 16px}.section-heading h2{font-size:30px}.project-grid,.lab-grid{grid-template-columns:1fr}.featured-project{grid-column:auto;display:flex}.featured-project .project-top{width:100%}.featured-project .project-mark{align-self:start;margin:28px 0 20px}.featured-project h3{margin-top:0}.project-mark{margin:25px 0 18px;font-size:66px}.cards{grid-template-columns:1fr}.service{padding:23px}.card-top{margin-bottom:16px}.service p{margin-bottom:15px}.section-top{flex-direction:column;align-items:start;gap:10px}.contact-section{flex-direction:column;gap:20px}.form-row{grid-template-columns:1fr;gap:0}.message-section{padding-top:5px}footer{flex-direction:column;gap:10px}dialog{padding:40px 24px 28px}dialog h2{font-size:27px}.about-section h2{font-size:34px}.language-nav select{max-width:128px;font-size:14px}.site-nav a{font-size:14px}.hero{padding-bottom:28px}.project-kind{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
