:root{--black-color: #111;--white-color: #fff;--site-font: "SFMono-Regular", Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--disabled-opacity: .3}*{box-sizing:border-box}html,body{margin:0;padding:0;font-family:var(--site-font);background:var(--black-color)}.logo-watermark{position:absolute;bottom:.3rem;left:.3rem;width:3rem;height:auto;filter:invert(1);opacity:.075;z-index:1000}.hero{position:relative;width:100%;height:100svh;height:100vh;overflow:hidden;min-height:440px}#bgvid{width:100%;height:100%;object-fit:cover}.hero:after{content:"";position:absolute;inset:0;background:#00000073}#heading{position:absolute;inset:0;z-index:1;color:var(--white-color);display:flex;flex-direction:column;align-items:center;justify-content:space-evenly;text-align:center;padding:1.5rem}.title-cluster{display:flex;flex-direction:column;align-items:center;gap:.35rem}.icons-cluster{display:flex;flex-direction:column;align-items:center;gap:1.25rem}#title{margin:0;font-weight:300;font-size:clamp(2.6rem,8vw,7rem);letter-spacing:.02em;animation:titlePulse 6s ease-in-out infinite}#subtitle{margin:0;font-weight:300;font-size:clamp(1.1rem,2.4vw,2rem);font-style:italic}.service-icons{display:flex;align-items:flex-start;justify-content:center;gap:clamp(1rem,4vw,3rem);flex-wrap:wrap;margin:0}#icons-heading{margin:0;font-weight:400;font-size:clamp(1rem,2vw,1.4rem)}.service-icon{color:var(--white-color);width:110px;display:flex;flex-direction:column;align-items:center;gap:.75rem;cursor:pointer}.service-icon-button{border:0;background:transparent;color:inherit;font:inherit;padding:0}.service-icon img{display:block;width:78px;height:78px;object-fit:contain;object-position:center;filter:brightness(0) invert(1);transition:transform .18s ease,filter .18s ease,opacity .18s ease}.service-icon span{font-size:.95rem;font-weight:500;letter-spacing:.02em;opacity:.85;transition:opacity .18s ease,text-shadow .18s ease}.service-icon:hover img{transform:translateY(-3px) scale(1.06);filter:brightness(0) invert(1) drop-shadow(0 0 8px rgba(255,255,255,.11))}.service-icon:hover span{opacity:1;text-shadow:0 0 6px rgba(255,255,255,.14)}.service-icon-button:focus-visible{outline:1px solid rgba(255,255,255,.75);outline-offset:4px;border-radius:6px}.service-icon-button:disabled{cursor:default}.service-icon-button:disabled img{filter:invert(1) brightness(var(--disabled-opacity));transform:none}.service-icon-button:disabled span{opacity:var(--disabled-opacity);text-shadow:none}.service-icon-button:disabled:hover img,.service-icon-button:disabled:hover span{transform:none;text-shadow:none}.skills-modal-overlay{position:fixed;inset:0;z-index:4;display:flex;align-items:center;justify-content:center;padding:1rem;background:#00000059;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,visibility .18s ease}.skills-modal-overlay.open{opacity:1;visibility:visible;pointer-events:auto}.skills-modal{width:min(720px,96vw);border:1px solid rgba(255,255,255,.35);border-radius:8px;padding:1.25rem 1.25rem 1rem;color:var(--white-color);background:#0c0c0cad;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);text-align:left;position:relative}.skills-modal h3{margin:0 0 .8rem;font-size:1.2rem}.skills-table{width:100%;border-collapse:collapse}.skills-table th,.skills-table td{padding:.65rem .55rem;vertical-align:middle}.skills-table th{width:28%;position:relative;text-align:center;font-weight:600;font-size:.98rem;letter-spacing:.02em}.skills-table th:after{content:"";position:absolute;right:0;top:10%;width:1px;height:80%;background:#ffffff6b}.skills-table td{padding-left:.9rem;line-height:1.45}.skills-modal-close{position:absolute;top:.55rem;right:.7rem;border:0;background:transparent;color:var(--white-color);font-size:1.15rem;cursor:pointer;opacity:.8}.skills-modal-close:hover{opacity:1}.skills-modal-close:focus-visible{outline:1px solid rgba(255,255,255,.75);outline-offset:2px}@media screen and (max-width:767px){#heading{padding:1rem}#title{font-size:clamp(2rem,12vw,4rem)}#subtitle{font-size:clamp(.95rem,4.2vw,1.4rem)}.service-icons{gap:clamp(.75rem,4vw,1.6rem)}#icons-heading{font-size:clamp(.85rem,3.4vw,1.1rem)}.service-icon{width:92px;gap:.5rem}.service-icon img{width:62px;height:62px}.service-icon span{font-size:.84rem}.skills-modal{width:100%;padding:1rem .95rem .85rem}.skills-modal h3{font-size:1.05rem}.skills-table th,.skills-table td{padding:.55rem .45rem}.skills-table th{width:34%;font-size:.84rem}.skills-table td{padding-left:.7rem;font-size:.88rem;line-height:1.35}}@media screen and (max-width:900px)and (orientation:landscape){.hero{min-height:0}#heading{padding:clamp(.75rem,4vh,1.75rem)}#title{font-size:clamp(1.8rem,7vw,3.2rem)}#subtitle{font-size:clamp(.9rem,2.2vw,1.2rem)}.service-icons{flex-wrap:nowrap;gap:clamp(.75rem,2.8vw,1.4rem)}#icons-heading{font-size:clamp(.72rem,2vw,.95rem)}.service-icon{width:78px;gap:.35rem}.service-icon img{width:46px;height:46px}.service-icon span{font-size:.74rem}.skills-modal{width:min(760px,98vw);padding:.85rem .95rem .75rem}.skills-modal h3{margin-bottom:.55rem;font-size:.98rem}.skills-table th,.skills-table td{padding:.4rem}.skills-table th{width:31%;font-size:.78rem}.skills-table td{padding-left:.55rem;font-size:.78rem;line-height:1.22}}@keyframes titlePulse{0%{opacity:.88;text-shadow:0 0 0 rgba(255,255,255,0)}50%{opacity:1;text-shadow:0 0 8px rgba(255,255,255,.28)}to{opacity:.88;text-shadow:0 0 0 rgba(255,255,255,0)}}
