:root{--font-display:"opensans-bold","Segoe UI",sans-serif;--font-body:"opensans-regular","Segoe UI",sans-serif;--font-accent:"librebaskerville-regular",Georgia,serif;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-14:3.5rem;--space-16:4rem;--radius-sm:10px;--radius-md:14px;--radius-lg:20px;--text-strong:#0f172a;--text-body:#334155;--text-muted:#64748b;--surface:#fff;--surface-soft:#f8fafc;--surface-deep:#0f172a;--line:#dbe6f2;--brand:#0ea5e9;--brand-strong:#0369a1;--brand-soft:#0ea5e929;--shadow-soft:0 14px 36px #0f172a17;--shadow-hover:0 20px 40px #0f172a29}*{box-sizing:border-box}html{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(180deg,#eef4fb,#fff 36%);color:#334155;color:var(--text-body);font-family:opensans-regular,Segoe UI,sans-serif;font-family:var(--font-body);margin:0;padding:0}h1,h2,h3,h4,h5,h6{color:#0f172a;color:var(--text-strong);font-family:opensans-bold,Segoe UI,sans-serif;font-family:var(--font-display);letter-spacing:-.01em}main{display:block}.section-block{padding-bottom:3.5rem;padding-bottom:var(--space-14);padding-top:4rem;padding-top:var(--space-16);position:relative}.section-kicker{color:#0369a1;color:var(--brand-strong);font-family:opensans-bold,Segoe UI,sans-serif;font-family:var(--font-display);font-size:1.1rem;letter-spacing:.14em;margin:0 0 .75rem;margin:0 0 var(--space-3);text-transform:uppercase}.section-subtitle{color:#64748b;color:var(--text-muted);font:1.4rem/1.6 librebaskerville-regular,Georgia,serif;font:1.4rem/1.6 var(--font-accent);margin:0 0 1.5rem;margin:0 0 var(--space-6)}.section-intro h2{font-size:clamp(1.5rem,2.8vw,2rem);margin:0 0 .75rem;margin:0 0 var(--space-3)}#home{min-height:94vh}header .banner-text .hero-kicker{color:#e2e8f0;font-family:opensans-bold,Segoe UI,sans-serif;font-family:var(--font-display);letter-spacing:.18em;margin:0;text-transform:uppercase}header .banner-text .hero-type{color:#dbe6ff;font-family:librebaskerville-regular,Georgia,serif;font-family:var(--font-accent)}header .banner-text .hero-statement{color:#e2e8f0;font-size:.98rem;line-height:1.75;margin:1.25rem auto 0;margin:var(--space-5) auto 0;max-width:760px}#about{background:radial-gradient(circle at 75% 15%,#0ea5e924,#0000 36%),linear-gradient(150deg,#0f172a,#111f34 55%,#18283c)}#about .main-col{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff0d;border:1px solid #94a3b840;border-radius:20px;border-radius:var(--radius-lg);padding:2rem;padding:var(--space-8)}#about .section-kicker,#about h2{color:#f8fafc}#about p{color:#cbd5e1}#about .section-subtitle{color:#bfdbfe}#about .profile-pic{border:4px solid #ffffff47;box-shadow:0 14px 36px #0f172a17;box-shadow:var(--shadow-soft);height:170px;width:170px}#about .contact-details,#about .download{margin-top:1.5rem;margin-top:var(--space-6)}#about .download .button{background:linear-gradient(120deg,#0ea5e9,#0369a1);background:linear-gradient(120deg,var(--brand) 0,var(--brand-strong) 100%);border-radius:999px}#resume{background:#fff;background:var(--surface)}#resume .section-intro-row{margin-bottom:2rem;margin-bottom:var(--space-8)}#portfolio .header-col h1 span,#resume .header-col h1 span{border-bottom-color:#0ea5e9;border-bottom-color:var(--brand)}#resume .main-col{padding-right:0}#resume .resume-card{background:#f8fafc;background:var(--surface-soft);border:1px solid #dbe6f2;border:1px solid var(--line);border-radius:14px;border-radius:var(--radius-md);box-shadow:0 14px 36px #0f172a17;box-shadow:var(--shadow-soft);margin-bottom:1.5rem;margin-bottom:var(--space-6);padding:1.5rem;padding:var(--space-6)}#resume .resume-card h3{margin-top:0}#resume .info{color:#64748b;color:var(--text-muted);font-family:librebaskerville-regular,Georgia,serif;font-family:var(--font-accent)}#resume .bars{width:100%}#resume .bars li{background:#dde5f0;border-radius:999px;height:10px;margin-bottom:52px}#resume .bars li em{color:#334155;color:var(--text-body);font-size:1.4rem;letter-spacing:.08em;top:-32px}#resume .bar-expand{background:linear-gradient(120deg,#0ea5e9,#0369a1);background:linear-gradient(120deg,var(--brand) 0,var(--brand-strong) 100%);border-radius:999px;height:10px}#portfolio{background:radial-gradient(circle at 8% 10%,#0ea5e91f,#0000 35%),radial-gradient(circle at 90% 88%,#0284c71c,#0000 28%),#f4f8fc}#portfolio .portfolio-intro{margin-bottom:2rem;margin-bottom:var(--space-8);text-align:center}#portfolio .portfolio-tabs{display:flex;flex-wrap:wrap;gap:.75rem;gap:var(--space-3);justify-content:center;margin-bottom:2.5rem;margin-bottom:var(--space-10)}#portfolio .portfolio-tabs button{background:#fff;border:1px solid #c8d8ea;border-radius:999px;color:#0f172a;font-family:opensans-bold,Segoe UI,sans-serif;font-family:var(--font-display);letter-spacing:.02em;min-width:100px;padding:.58rem 1.1rem;transition:all .14s ease}#portfolio .portfolio-tabs button.active-tab,#portfolio .portfolio-tabs button:hover{background:linear-gradient(120deg,#0ea5e9,#0369a1);background:linear-gradient(120deg,var(--brand) 0,var(--brand-strong) 100%);border-color:#0369a1;border-color:var(--brand-strong);color:#fff;transform:translateY(-1px)}#portfolio .portfolio-grid{grid-gap:2rem;grid-gap:var(--space-8);display:grid;gap:2rem;gap:var(--space-8);grid-template-columns:repeat(auto-fit,minmax(290px,1fr));padding:0}#portfolio .portfolio-card{background:#fff;background:var(--surface);border:1px solid #dbe6f2;border:1px solid var(--line);border-radius:20px;border-radius:var(--radius-lg);box-shadow:0 14px 36px #0f172a17;box-shadow:var(--shadow-soft);overflow:hidden;transition:transform .22s ease,box-shadow .22s ease}#portfolio .portfolio-card:hover{box-shadow:0 20px 40px #0f172a29;box-shadow:var(--shadow-hover);transform:translateY(-8px)}#portfolio .card-image{height:210px;object-fit:cover;transition:transform .22s ease;width:100%}#portfolio .portfolio-card:hover .card-image{transform:scale(1.03)}#portfolio .card-content{padding:1.5rem;padding:var(--space-6)}#portfolio .card-header{align-items:center;display:flex;gap:1rem;gap:var(--space-4);justify-content:space-between}#portfolio .card-content h5{font-size:1.15rem;margin:0}#portfolio .project-category{background:#0ea5e929;background:var(--brand-soft);border-radius:999px;color:#0369a1;color:var(--brand-strong);font-size:.9rem;letter-spacing:.08em;padding:.34rem .65rem;text-transform:uppercase;white-space:nowrap}#portfolio .card-description{color:#334155;color:var(--text-body);font-size:1.1rem;line-height:1.7;margin-top:1rem;margin-top:var(--space-4)}#portfolio .project-outcome{background:#f1f8ff;border-left:3px solid #0ea5e9;border-left:3px solid var(--brand);border-radius:8px;color:#0f172a;font-size:1rem;line-height:1.6;margin-top:1rem;margin-top:var(--space-4);padding:.7rem .8rem}#portfolio .stack-tags{display:flex;flex-wrap:wrap;gap:.5rem;gap:var(--space-2);margin-top:1.25rem;margin-top:var(--space-5)}#portfolio .stack-tag{background-color:#eef4fb;border:1px solid #d5e2f0;border-radius:999px;color:#0f172a;font-family:opensans-bold,Segoe UI,sans-serif;font-family:var(--font-display);font-size:.9rem;min-width:60px;padding:.22rem .62rem;text-align:center;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}#portfolio .card-actions{display:flex;gap:.75rem;gap:var(--space-3);margin-top:1.5rem;margin-top:var(--space-6)}#portfolio .card-btn{align-items:center;border-radius:999px;display:inline-flex;font-family:opensans-bold,Segoe UI,sans-serif;font-family:var(--font-display);font-size:.8rem;justify-content:center;padding:.56rem .92rem;text-decoration:none;transition:all .15s ease}#portfolio .card-btn-primary{background:linear-gradient(120deg,#0ea5e9,#0369a1);background:linear-gradient(120deg,var(--brand) 0,var(--brand-strong) 100%);color:#fff}#portfolio .card-btn-secondary{background:#fff;border:1px solid #c5d7ea;color:#0f172a}#portfolio .card-btn:hover{transform:translateY(-1px)}#testimonials{background:radial-gradient(circle at 18% 22%,#22d3ee2e,#0000 24%),radial-gradient(circle at 88% 16%,#3b82f638,#0000 20%),linear-gradient(145deg,#08111f,#10213a 48%,#08101d);overflow:hidden}#testimonials:after,#testimonials:before{border-radius:999px;content:"";filter:blur(18px);pointer-events:none;position:absolute}#testimonials:before{background:#22d3ee26;height:180px;right:-60px;top:12%;width:180px}#testimonials:after{background:#60a5fa1f;bottom:10%;height:150px;left:-40px;width:150px}#testimonials .row{position:relative;z-index:1}#testimonials .testimonials-intro{padding-right:1.5rem;padding-right:var(--space-6)}#testimonials .section-kicker,#testimonials h2{color:#f8fafc}#testimonials .section-subtitle{color:#c7d8ee;margin-bottom:1.5rem;margin-bottom:var(--space-6)}#testimonials .testimonials-proof-strip{display:flex;flex-wrap:wrap;gap:.65rem;margin-bottom:2rem;margin-bottom:var(--space-8)}#testimonials .testimonials-proof-strip span{background:#ffffff0f;border:1px solid #94a3b84d;border-radius:999px;font-size:.74rem;letter-spacing:.09em;padding:.55rem .85rem;text-transform:uppercase}#testimonials .testimonials-counter,#testimonials .testimonials-proof-strip span{color:#dbeafe;font-family:opensans-bold,Segoe UI,sans-serif;font-family:var(--font-display)}#testimonials .testimonials-counter{align-items:baseline;display:inline-flex;font-size:1.05rem;gap:.2rem}#testimonials .testimonials-counter strong{color:#fff;font-size:2rem;line-height:1}#testimonials .testimonials-shell{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#080f1e8a;border:1px solid #94a3b83d;border-radius:28px;box-shadow:0 30px 80px #02061752;padding:1.5rem;padding:var(--space-6);position:relative}#testimonials .testimonials-rail{grid-gap:1rem;grid-gap:var(--space-4);display:grid;gap:1rem;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:1.25rem;margin-bottom:var(--space-5)}#testimonials .testimonial-chip{align-items:center;background:#ffffff0a;border:1px solid #94a3b833;border-radius:20px;color:#dbeafe;cursor:pointer;display:flex;gap:.95rem;padding:.95rem 1rem;text-align:left;transition:transform .18s ease,border-color .18s ease,background .18s ease;width:100%}#testimonials .testimonial-chip.is-active,#testimonials .testimonial-chip:focus-visible,#testimonials .testimonial-chip:hover{background:#0ea5e924;border-color:#38bdf894;outline:none;transform:translateY(-2px)}#testimonials .testimonial-chip-index{color:#e0f2feb3;font-family:opensans-bold,Segoe UI,sans-serif;font-family:var(--font-display);font-size:.82rem;letter-spacing:.1em}#testimonials .testimonial-chip-copy{display:flex;flex-direction:column;min-width:0}#testimonials .testimonial-chip-copy strong{color:#fff;font-size:.95rem}#testimonials .testimonial-chip-copy span{color:#bfdbfe;font-size:.78rem;line-height:1.4}#testimonials .testimonials-stage{border-radius:24px;overflow:hidden}#testimonials .testimonials-track{align-items:stretch;display:flex}#testimonials .testimonial-card{flex:0 0 100%;min-width:0;padding:.15rem}#testimonials .testimonial-card-inner{background:linear-gradient(180deg,#ffffff1f,#0f172ad1),linear-gradient(135deg,#0ea5e914,#3b82f614);border:1px solid #bfdbfe2e;border-radius:24px;display:flex;flex-direction:column;gap:2rem;gap:var(--space-8);justify-content:space-between;min-height:100%;padding:clamp(1.4rem,3vw,2.2rem);position:relative;transition:transform .22s ease,border-color .22s ease}#testimonials .testimonial-card.is-active .testimonial-card-inner{border-color:#7dd3fc66;transform:translateY(-2px)}#testimonials .testimonial-quote-mark{color:#7dd3fc80;display:inline-block;font-size:clamp(4rem,9vw,6.5rem);line-height:.8}#testimonials .testimonial-copy,#testimonials .testimonial-quote-mark{font-family:librebaskerville-regular,Georgia,serif;font-family:var(--font-accent)}#testimonials .testimonial-copy{color:#f8fafc;font-size:clamp(1.08rem,2vw,1.45rem);line-height:1.8;margin:0}#testimonials .testimonial-project{color:#dbeafe;font-size:.92rem;line-height:1.6;margin:0}#testimonials .testimonial-project span{color:#7dd3fc;display:block;font-family:opensans-bold,Segoe UI,sans-serif;font-family:var(--font-display);font-size:.72rem;letter-spacing:.12em;margin-bottom:.3rem;text-transform:uppercase}#testimonials .testimonial-footer{align-items:flex-end;display:flex;gap:1rem;gap:var(--space-4);justify-content:space-between}#testimonials .testimonial-author{display:flex;flex-direction:column;gap:.25rem}#testimonials .testimonial-author strong{color:#fff;font-size:1rem}#testimonials .testimonial-author span{color:#bfdbfe;font-size:.83rem;line-height:1.5}#testimonials .testimonial-badge{background:#0ea5e924;border-radius:999px;color:#d9f7ff;flex-shrink:0;font-family:opensans-bold,Segoe UI,sans-serif;font-family:var(--font-display);font-size:.72rem;letter-spacing:.1em;padding:.72rem .9rem;text-transform:uppercase}#testimonials .testimonials-controls{align-items:center;display:flex;gap:1rem;gap:var(--space-4);margin-top:1.25rem;margin-top:var(--space-5)}#testimonials .testimonial-nav{background:#ffffff0a;border:1px solid #94a3b83d;border-radius:999px;color:#e0f2fe;cursor:pointer;font-family:opensans-bold,Segoe UI,sans-serif;font-family:var(--font-display);font-size:.76rem;letter-spacing:.12em;min-width:86px;padding:.8rem 1rem;text-transform:uppercase;transition:transform .18s ease,border-color .18s ease,background .18s ease}#testimonials .testimonial-nav:focus-visible,#testimonials .testimonial-nav:hover{background:#0ea5e924;border-color:#7dd3fc80;outline:none;transform:translateY(-1px)}#testimonials .testimonials-progress{background:#94a3b82e;border-radius:999px;flex:1 1;height:3px;overflow:hidden;position:relative}#testimonials .testimonials-progress-bar{background:linear-gradient(90deg,#22d3ee,#60a5fa);display:block;height:100%;transform-origin:left center;width:100%}#contact{background:radial-gradient(circle at 85% 20%,#0ea5e91f,#0000 35%),radial-gradient(circle at 20% 80%,#0ea5e91a,#0000 30%),#f8fafc;background:radial-gradient(circle at 85% 20%,#0ea5e91f,#0000 35%),radial-gradient(circle at 20% 80%,#0ea5e91a,#0000 30%),var(--surface-soft);padding-bottom:3.5rem;padding-bottom:var(--space-14);padding-top:4rem;padding-top:var(--space-16);position:relative}#contact .section-head h1 span{color:#0f172a;color:var(--text-strong)}#contact .eight.columns{background:#fff;background:var(--surface);border:1px solid #dbe6f2;border:1px solid var(--line);border-radius:20px;border-radius:var(--radius-lg);box-shadow:0 14px 36px #0f172a17;box-shadow:var(--shadow-soft);padding:2rem;padding:var(--space-8)}#contact form{margin-bottom:0}#contact fieldset{margin:0}#contact label{color:#0f172a;color:var(--text-strong);font-family:opensans-bold,Segoe UI,sans-serif;font-family:var(--font-display);font-weight:600}#contact input,#contact textarea{background:#fff;border:1px solid #dbe6f2;border:1px solid var(--line);border-radius:14px;border-radius:var(--radius-md);color:#0f172a;color:var(--text-strong);transition:border-color .12s ease,box-shadow .12s ease;width:100%}#contact input:focus,#contact textarea:focus{border-color:#0ea5e9;border-color:var(--brand);box-shadow:0 0 0 3px #0ea5e933;outline:none}#contact .submit{background:linear-gradient(120deg,#0ea5e9,#0369a1);background:linear-gradient(120deg,var(--brand) 0,var(--brand-strong) 100%);border:none;border-radius:9999px;color:#fff;font-family:opensans-bold,Segoe UI,sans-serif;font-family:var(--font-display);font-weight:700;letter-spacing:.03em;padding:.85rem 1.5rem}#contact .submit:disabled{cursor:wait;opacity:.8}.contact-honeypot{left:-9999px;opacity:0;pointer-events:none;position:absolute}#message-success,#message-warning{border-radius:14px;border-radius:var(--radius-md);display:block;margin-top:1.25rem;margin-top:var(--space-5);padding:.85rem 1rem}#message-warning{background:#fef2f2;color:#b91c1c}#message-success{background:#ecfdf5;color:#047857}#contact .footer-widgets{margin-top:1rem;margin-top:var(--space-4)}#contact .widget_contact{background:#fff;border:1px solid #dbe6f2;border:1px solid var(--line);border-radius:20px;border-radius:var(--radius-lg);padding:1.5rem;padding:var(--space-6)}#contact .widget_contact h4{color:#0f172a;color:var(--text-strong)}#contact .widget_contact .address,#contact .widget_contact .address a{color:#64748b;color:var(--text-muted)}footer .social-links li a{transition:color .15s ease}footer .social-links li a:hover{color:#0ea5e9;color:var(--brand)}@media only screen and (max-width:960px){#contact,.section-block{padding-bottom:3rem;padding-bottom:var(--space-12);padding-top:3.5rem;padding-top:var(--space-14)}#about .main-col,#contact .eight.columns,#contact .widget_contact,#testimonials .testimonials-shell{padding:1.5rem;padding:var(--space-6)}#testimonials .testimonials-layout{display:flex;flex-direction:column;gap:1.5rem;gap:var(--space-6)}#testimonials .testimonials-intro{padding-right:0}#portfolio .card-image{height:190px}}@media only screen and (max-width:767px){#contact,.section-block{padding-bottom:2.5rem;padding-bottom:var(--space-10);padding-top:3rem;padding-top:var(--space-12)}#about .main-col,#contact .eight.columns,#contact .widget_contact,#resume .resume-card,#testimonials .testimonials-shell{padding:1.25rem;padding:var(--space-5)}#testimonials .testimonials-rail{grid-template-columns:1fr}#testimonials .testimonial-footer,#testimonials .testimonials-controls{align-items:stretch;flex-direction:column}#testimonials .testimonial-nav{width:100%}#portfolio .portfolio-grid{gap:1.5rem;gap:var(--space-6);grid-template-columns:1fr}#portfolio .card-actions{flex-wrap:wrap}#portfolio .card-btn{flex:1 1;min-width:120px}#about .section-subtitle,#contact .section-subtitle,#portfolio .section-subtitle,#resume .section-subtitle,#testimonials .section-subtitle{font-size:.94rem}}@media only screen and (max-width:520px){#portfolio .portfolio-tabs button{font-size:.72rem;min-width:88px;padding:.5rem .8rem}#portfolio .card-header{align-items:flex-start;flex-direction:column}#testimonials .testimonial-copy{font-size:1rem}}
/*# sourceMappingURL=main.43c382d5.css.map*/