body{padding-top:3.5rem}.bd-placeholder-img{font-size:1.125rem;text-anchor:middle;-webkit-user-select:none;user-select:none}.carousel{margin-bottom:4rem}.carousel-caption{bottom:3rem;z-index:10;background:#0000008c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);border-radius:12px;padding:2rem 2.5rem;max-width:720px;margin-left:auto;margin-right:auto}.carousel-caption h1,.carousel-caption p{font-family:Courier New,Courier,monospace;color:#3f6;text-shadow:0 0 8px rgba(51,255,102,.55)}.carousel-caption .typewriter{min-height:1.4em}.carousel-caption .typewriter.typing:after{content:"█";margin-left:3px;animation:matrix-blink 1s step-end infinite}.carousel-caption .typewriter.typed:after{content:"█";margin-left:3px;opacity:.85}@keyframes matrix-blink{50%{opacity:0}}.carousel-caption .btn{margin-top:.5rem;font-family:Courier New,Courier,monospace;color:#3f6;border:1px solid #33ff66;background:#33ff6614;text-shadow:0 0 6px rgba(51,255,102,.6)}.carousel-caption .btn:hover{color:#000;background:#3f6;border-color:#3f6}.carousel-item{height:32rem;background-color:#777}.carousel-item>img{position:absolute;top:0;left:0;min-width:100%;height:32rem;object-fit:cover}.marketing .col-lg-4{margin-bottom:1.5rem;text-align:center}.marketing .col-lg-4 p{margin-right:.75rem;margin-left:.75rem}.featurette-divider{margin:5rem 0}.featurette-heading{letter-spacing:-.05rem}.portfolio-card{margin-bottom:1.5rem}.portfolio-card .card-img-top{height:200px;object-fit:cover}#about-image-placeholder{border-radius:8px;overflow:hidden}@media (min-width: 40em){.carousel-caption p{margin-bottom:1.25rem;font-size:1.25rem;line-height:1.4}.featurette-heading{font-size:50px}}@media (min-width: 62em){.featurette-heading{margin-top:7rem}}.card-text img,#about-body img{max-width:100%;height:auto;border-radius:4px}.card-text iframe,#about-body iframe{max-width:100%;border-radius:4px}.about-subtitle{font-size:1.15rem;line-height:1.7}#about-body{font-size:1.1rem;line-height:1.8}#about-body .timeline-item{transition:transform .2s ease,box-shadow .2s ease;border-radius:8px;padding:1rem 1rem 1rem 1.5rem}#about-body .timeline-item:hover{transform:translate(4px)}#about-body .timeline-item ul{padding-left:1.25rem}#about-body .timeline-item ul li{margin-bottom:.4rem}#about-body .card{transition:transform .2s ease,box-shadow .2s ease;border-radius:8px}#about-body .card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}#about-body h3{color:var(--bs-warning);letter-spacing:-.02em}#about-body .badge{font-weight:500;padding:.5rem 1rem}.modal .ql-editor{min-height:200px;color:#212529}.modal .ql-toolbar{border-top-left-radius:4px;border-top-right-radius:4px}.modal .ql-container{border-bottom-left-radius:4px;border-bottom-right-radius:4px}.portfolio-detail-hero{border-radius:10px;overflow:hidden;margin-bottom:1.5rem}.portfolio-detail-image{width:100%;max-height:460px;object-fit:cover;display:block}.portfolio-detail-header h1{letter-spacing:-.02em}.portfolio-detail-intro{padding-top:.75rem}.portfolio-detail-body{margin-top:2rem;font-size:1.1rem;line-height:1.8}.portfolio-detail-body img,.portfolio-detail-body video{max-width:100%;height:auto;border-radius:8px}.portfolio-detail-body iframe{max-width:100%;border-radius:8px}.portfolio-detail-body blockquote{border-left:4px solid var(--bs-primary);padding-left:1rem;color:var(--bs-secondary)}.portfolio-detail-body pre{background:var(--bs-dark);border:1px solid var(--bs-border-color);border-radius:8px;padding:1rem;overflow-x:auto}.portfolio-detail-body ul,.portfolio-detail-body ol{padding-left:1.5rem}.portfolio-detail-body h2,.portfolio-detail-body h3,.portfolio-detail-body h4{letter-spacing:-.02em;margin-top:1.5rem;margin-bottom:.75rem}.ql-align-center{text-align:center}.ql-align-right{text-align:right}.ql-align-justify{text-align:justify}.model-viewer{position:relative;width:100%;height:480px;border-radius:10px;overflow:hidden;background:#111418;border:1px solid var(--bs-border-color);margin-bottom:1.5rem}.model-viewer canvas{display:block}.model-viewer-loading{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:#3f6;font-family:Courier New,Courier,monospace;z-index:2}.model-file-panel{border:1px solid var(--bs-border-color);border-radius:10px;padding:1rem;background:#161b22}.model-files-list{max-height:400px;overflow-y:auto}.model-file-btn.active{background-color:#3f6;border-color:#3f6;color:#000;font-weight:600}.model-file-btn.active .text-body-secondary{color:#000!important}
