
:root{--bg:#f4f7fb;--surface:#fff;--ink:#162033;--muted:#667085;--primary:#16324f;--accent:#3b82f6;--accent2:#78b7ff;--line:#dfe7f1;--radius:22px;--shadow:0 16px 50px rgba(22,50,79,.10);--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,Segoe UI,Arial,sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.container{width:min(var(--max),calc(100% - 40px));margin:auto}.site-header{position:sticky;top:0;z-index:50;background:rgba(244,247,251,.9);backdrop-filter:blur(15px);border-bottom:1px solid rgba(223,231,241,.8)}.nav{height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;font-weight:800}.brand-mark{width:38px;height:38px;border-radius:12px;background:linear-gradient(145deg,var(--primary),var(--accent));display:grid;place-items:center;color:#fff}.nav-links{display:flex;align-items:center;gap:24px;font-size:14px;font-weight:650}.nav-links a:hover,.nav-links a.active{color:var(--accent)}.menu-btn{display:none;border:0;background:var(--surface);font-size:24px;border-radius:12px;padding:7px 12px;box-shadow:var(--shadow)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:13px 19px;border-radius:13px;border:1px solid transparent;font-weight:750;transition:.2s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--primary);color:#fff;box-shadow:0 10px 25px rgba(22,50,79,.22)}.btn-light{background:#fff;border-color:var(--line)}.hero{padding:92px 0 68px;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;width:580px;height:580px;border-radius:50%;background:radial-gradient(circle,rgba(59,130,246,.20),transparent 67%);right:-160px;top:-240px}.hero-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:65px;align-items:center}.eyebrow{display:inline-flex;padding:7px 12px;border:1px solid #cbdcf1;background:#eaf3ff;color:#1e5c9a;border-radius:999px;font-size:13px;font-weight:750}.hero h1{font-size:clamp(46px,7vw,82px);line-height:1.02;letter-spacing:-3px;margin:22px 0}.gradient-text{background:linear-gradient(90deg,var(--primary),var(--accent));-webkit-background-clip:text;color:transparent}.lead{font-size:19px;color:var(--muted);max-width:690px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.profile-card{background:linear-gradient(155deg,#173957,#0e2237);color:#fff;border-radius:32px;padding:28px;box-shadow:0 30px 80px rgba(22,50,79,.28);position:relative}.profile-photo{aspect-ratio:1/1;border-radius:24px;background:linear-gradient(145deg,#dcecff,#80b8f1);overflow:hidden}.profile-photo img{width:100%;height:100%;object-fit:cover}.profile-caption{display:flex;justify-content:space-between;align-items:end;margin-top:20px}.status{font-size:13px;color:#a8cff7}.status:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:#53df9b;margin-right:7px}.section{padding:78px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:34px}.section h2,.page-hero h1{font-size:clamp(34px,5vw,54px);line-height:1.1;letter-spacing:-1.5px;margin:0}.section-head p{max-width:600px;color:var(--muted);margin:0}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:25px;box-shadow:0 8px 30px rgba(22,50,79,.05)}.card-icon{width:48px;height:48px;border-radius:15px;background:#e9f3ff;color:var(--accent);display:grid;place-items:center;font-size:22px;margin-bottom:18px}.card h3{margin:0 0 8px;font-size:20px}.card p{color:var(--muted);margin:0}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.metric{text-align:center;background:#fff;border-radius:18px;padding:23px;border:1px solid var(--line)}.metric b{font-size:34px;color:var(--primary);display:block}.project-card{overflow:hidden;padding:0}.project-visual{height:210px;background:linear-gradient(135deg,#16324f,#3b82f6);padding:22px;color:#fff;position:relative}.project-visual:after{content:"";position:absolute;inset:25px;border:1px solid rgba(255,255,255,.35);border-radius:18px;background:linear-gradient(90deg,transparent 49%,rgba(255,255,255,.15) 50%,transparent 51%)}.project-body{padding:24px}.tags{display:flex;flex-wrap:wrap;gap:7px;margin:14px 0}.tag{font-size:12px;font-weight:700;padding:6px 9px;border-radius:999px;background:#edf4fc;color:#315b83}.link-arrow{font-weight:750;color:var(--accent)}.page-hero{padding:75px 0 35px}.page-hero p{font-size:18px;color:var(--muted);max-width:750px}.content-grid{display:grid;grid-template-columns:1fr 320px;gap:30px}.timeline{position:relative;padding-left:28px}.timeline:before{content:"";position:absolute;left:7px;top:8px;bottom:8px;width:2px;background:#cfe0f3}.timeline-item{position:relative;margin-bottom:24px}.timeline-item:before{content:"";position:absolute;left:-27px;top:8px;width:14px;height:14px;border-radius:50%;background:var(--accent);border:4px solid #dcecff}.timeline-meta{font-size:13px;color:var(--accent);font-weight:800}.timeline h3{margin:3px 0}.timeline ul{margin:10px 0;padding-left:20px;color:var(--muted)}.skill-cloud{display:flex;flex-wrap:wrap;gap:9px}.skill-cloud span{background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 12px;font-size:13px}.document-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.doc-card{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden}.doc-preview{height:230px;background:#eaf0f7;display:grid;place-items:center;padding:25px}.paper{width:145px;height:190px;background:white;box-shadow:0 10px 30px rgba(0,0,0,.15);padding:17px;transform:rotate(-2deg)}.paper-line{height:5px;background:#dfe7ef;margin:9px 0;border-radius:5px}.paper-seal{width:45px;height:45px;border:4px double var(--accent);border-radius:50%;margin:25px auto}.doc-body{padding:20px}.doc-actions{display:flex;gap:9px;margin-top:15px}.notice{padding:19px 22px;border-radius:16px;background:#eaf4ff;border-left:4px solid var(--accent);color:#315b83}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:25px}.contact-list{display:grid;gap:12px}.contact-item{display:flex;gap:14px;align-items:center;padding:17px;background:#fff;border:1px solid var(--line);border-radius:16px}.contact-form{display:grid;gap:13px}.input{width:100%;border:1px solid var(--line);border-radius:13px;padding:14px;font:inherit;background:#fff}.footer{padding:38px 0;border-top:1px solid var(--line);color:var(--muted);font-size:14px}.footer-grid{display:flex;justify-content:space-between;gap:20px}.resume-page{background:#fff}.resume-wrap{max-width:1000px;margin:35px auto;background:#fff;box-shadow:var(--shadow);display:grid;grid-template-columns:300px 1fr}.resume-side{background:var(--primary);color:#fff;padding:35px 28px}.resume-main{padding:40px}.resume-side h1{font-size:30px;line-height:1.1}.resume-side a{color:#fff}.resume-section{margin-bottom:28px}.resume-title{font-size:20px;border-bottom:2px solid #dbeafe;padding-bottom:7px;color:var(--primary)}.resume-side .resume-title{color:#9ccaff;border-color:rgba(255,255,255,.2);font-size:14px;text-transform:uppercase}.print-btn{position:fixed;right:20px;bottom:20px;z-index:60}.modal{position:fixed;inset:0;background:rgba(7,20,34,.8);display:none;align-items:center;justify-content:center;z-index:100;padding:30px}.modal.open{display:flex}.modal-content{background:#fff;max-width:850px;width:100%;max-height:90vh;overflow:auto;border-radius:20px;padding:20px}.modal-close{float:right;border:0;background:#edf2f7;border-radius:10px;padding:8px 12px;cursor:pointer}
@media(max-width:850px){.nav-links{display:none;position:absolute;top:76px;left:20px;right:20px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px;flex-direction:column;box-shadow:var(--shadow)}.nav-links.open{display:flex}.menu-btn{display:block}.hero-grid,.content-grid,.contact-grid{grid-template-columns:1fr}.hero{padding-top:55px}.profile-card{max-width:480px}.grid-3,.document-grid{grid-template-columns:1fr 1fr}.metrics{grid-template-columns:1fr 1fr}.resume-wrap{grid-template-columns:1fr;margin:0}.resume-side{padding:30px}.resume-main{padding:30px}.print-btn{position:static;margin:20px}}
@media(max-width:560px){.container{width:min(100% - 26px,var(--max))}.grid-3,.document-grid{grid-template-columns:1fr}.hero h1{letter-spacing:-2px}.section{padding:55px 0}.section-head{display:block}.section-head p{margin-top:12px}.footer-grid{display:block}.profile-caption{display:block}.nav .btn{display:none}}
@media print{.site-header,.print-btn,.footer{display:none!important}.resume-wrap{margin:0;box-shadow:none;max-width:none}.resume-page{background:#fff}}

.doc-preview img{width:100%;height:100%;object-fit:cover;object-position:top;border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,.14)}
.doc-actions .btn{flex:1;padding:11px 13px;font-size:14px}
@media(max-width:760px){.document-grid{grid-template-columns:1fr}.doc-preview{height:320px}}


/* Final visual polish */
:root{--glass:rgba(255,255,255,.72);--glow:rgba(59,130,246,.22)}
[data-theme="dark"]{--bg:#09111d;--surface:#111c2b;--ink:#edf5ff;--muted:#9eacbd;--primary:#7ab8ff;--accent:#60a5fa;--accent2:#9dccff;--line:#26364a;--shadow:0 18px 60px rgba(0,0,0,.35);--glass:rgba(17,28,43,.76);--glow:rgba(96,165,250,.18)}
body{transition:background .3s,color .3s;background-image:radial-gradient(circle at 15% 5%,var(--glow),transparent 28%),radial-gradient(circle at 90% 22%,rgba(120,183,255,.12),transparent 25%)}
.site-header{background:var(--glass)}
.theme-toggle{width:42px;height:42px;border:1px solid var(--line);border-radius:13px;background:var(--surface);color:var(--ink);font-size:18px;cursor:pointer;transition:.2s;display:grid;place-items:center}.theme-toggle:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.nav-actions{display:flex;align-items:center;gap:10px}
.card,.metric,.doc-card,.contact-item,.skill-cloud span{transition:transform .25s,box-shadow .25s,border-color .25s;background:var(--surface)}
.card:hover,.metric:hover,.doc-card:hover,.contact-item:hover{transform:translateY(-6px);box-shadow:0 20px 55px rgba(22,50,79,.13);border-color:rgba(59,130,246,.45)}
[data-theme="dark"] .btn-light,[data-theme="dark"] .input,[data-theme="dark"] .menu-btn{background:var(--surface);color:var(--ink)}
[data-theme="dark"] .metric,[data-theme="dark"] .doc-card,[data-theme="dark"] .contact-item,[data-theme="dark"] .skill-cloud span{background:var(--surface)}
[data-theme="dark"] .eyebrow{background:rgba(59,130,246,.12);border-color:#315277;color:#9dccff}
[data-theme="dark"] .tag{background:#1a2c42;color:#a9d2ff}
[data-theme="dark"] .notice{background:#10243a;color:#b8d8f8}
[data-theme="dark"] .doc-preview{background:#162438}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .65s ease,transform .65s ease}.reveal.visible{opacity:1;transform:none}
.hero-grid>div,.profile-card{animation:heroIn .75s ease both}.profile-card{animation-delay:.12s}@keyframes heroIn{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
.profile-card:after{content:"";position:absolute;inset:-1px;border-radius:32px;padding:1px;background:linear-gradient(140deg,rgba(255,255,255,.5),transparent 45%,rgba(96,165,250,.6));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;pointer-events:none}
.doc-preview{overflow:hidden}.doc-preview img{transition:transform .45s}.doc-card:hover .doc-preview img{transform:scale(1.035)}
.doc-card h3{margin:0 0 7px}.doc-card p{color:var(--muted);margin:0}
.doc-type{display:inline-flex;margin-bottom:12px;font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:var(--accent)}
.project-visual{isolation:isolate}.project-visual:before{content:"BPMN  •  UML  •  RDF";position:absolute;z-index:2;bottom:24px;left:24px;font-size:13px;font-weight:800;letter-spacing:.1em}
.project-card .project-body{min-height:210px;display:flex;flex-direction:column}.project-card .link-arrow{margin-top:auto}
.contact-grid.contact-only{grid-template-columns:1fr;max-width:760px}.contact-item strong{display:block}.contact-item a{color:var(--accent);word-break:break-word}
.section-soft{background:linear-gradient(180deg,transparent,rgba(59,130,246,.055),transparent)}
@media(max-width:850px){.nav-actions{margin-left:auto}.theme-toggle{width:40px;height:40px}.nav-links{background:var(--surface)}}
@media(max-width:560px){.brand span:last-child{display:none}.theme-toggle{width:38px;height:38px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
