*{box-sizing:border-box}body,html{margin:0;padding:0;background:#08080a;color:#f4f4f6;font-family:Pretendard,-apple-system,sans-serif;-webkit-font-smoothing:antialiased;word-break:keep-all}a{color:#ffb27a;text-decoration:none}a:hover{color:#ffd1ac}::selection{background:#ff7a2f;color:#fff}input:focus,textarea:focus{outline:none;border-color:#ff7a2f!important}@keyframes fadeUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes bob{0%,to{transform:translate(-50%)}50%{transform:translate(-50%,8px)}}.snap-container{height:100vh;height:100dvh;overflow-y:scroll;overscroll-behavior:contain;scrollbar-width:none}.snap-container::-webkit-scrollbar{display:none}@media (hover:none) and (pointer:coarse){.snap-container{scroll-snap-type:y mandatory}.snap-child{scroll-snap-align:start}.snap-end{scroll-snap-align:end}}.nav-desktop{display:flex;gap:2px;align-items:center}.nav-burger{display:none}@media (max-width:920px){.nav-desktop{display:none}.nav-burger{display:flex}}@media (max-width:900px){.vh-section{height:auto!important;min-height:100svh}.photo-gallery{max-width:100%!important}.svc-grid{grid-template-columns:1fr!important}.blog-grid{grid-template-columns:repeat(2,1fr)!important}}@media (max-width:640px){.photo-gallery{flex-direction:row!important;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding:4px 20px 12px;scrollbar-width:none}.photo-gallery::-webkit-scrollbar{display:none}.photo-row{display:contents}.photo-row>div{flex:0 0 auto!important;height:min(300px,42vh);width:auto;max-width:78vw;scroll-snap-align:center}.photo-nav{display:flex!important}.blog-grid{grid-template-columns:1fr!important}}.photo-nav{display:none;justify-content:center;gap:12px;margin-top:16px}.marquee-right{animation:marquee-right 20s linear infinite}.marquee-left{animation:marquee-left 20s linear infinite}@keyframes marquee-right{0%{transform:translateX(0)}to{transform:translateX(-50%)}}@keyframes marquee-left{0%{transform:translateX(-50%)}to{transform:translateX(0)}}.hero-seq{position:absolute;inset:0;background:#08080a;overflow:hidden}.hero-seq-layer{position:absolute;inset:0;opacity:0;transform-origin:50% 62%;will-change:transform,opacity;animation:hero-seq-fade 18s ease-in-out infinite,hero-seq-pan 18s linear infinite}.hero-seq-layer:nth-child(2){transform-origin:50% 38%;animation-delay:-9s}@keyframes hero-seq-fade{0%{opacity:1}42%{opacity:1}50%{opacity:0}92%{opacity:0}to{opacity:1}}@keyframes hero-seq-pan{0%{transform:scale(1.06) translate3d(.5%,0,0)}50%{transform:scale(1.14) translate3d(-.8%,-.6%,0)}51%{transform:scale(1.02) translate3d(.9%,.3%,0)}92%{transform:scale(1.02) translate3d(.9%,.3%,0)}to{transform:scale(1.06) translate3d(.5%,0,0)}}@media (prefers-reduced-motion:reduce){.hero-seq-layer{animation:none;opacity:0;transform:none}.hero-seq-layer:first-child{opacity:1}}.hover-bright:hover{border-color:rgba(255,255,255,.4)!important;color:#f4f4f6!important}.hover-card:hover{border-color:rgba(255,122,47,.5)!important}.hover-fill:hover{background:rgba(255,255,255,.12)!important}.post-body{font:400 17px/1.95 Pretendard,sans-serif;color:#b4b4bc}.post-body p{margin:0 0 28px;text-wrap:pretty}.post-body h2{font:700 22px Pretendard,sans-serif;color:#f4f4f6;letter-spacing:-.01em;margin:40px 0 16px}.post-body h3{font:600 19px Pretendard,sans-serif;color:#f4f4f6;margin:32px 0 14px}.post-body a{color:#ff7a2f;text-decoration:underline;text-underline-offset:3px}.post-body strong{color:#f4f4f6;font-weight:600}.post-body ol,.post-body ul{margin:0 0 28px;padding-left:22px}.post-body li{margin-bottom:8px}.post-body blockquote{margin:0 0 28px;padding:4px 0 4px 20px;border-left:3px solid #ff7a2f;color:#d6d6dc}.post-body img{max-width:100%;border-radius:14px;margin:8px 0 28px}.post-body hr{border:none;border-top:1px solid rgba(255,255,255,.1);margin:36px 0}.post-body code{background:rgba(255,255,255,.08);border-radius:6px;padding:2px 7px;font-size:15px}.carousel-track{scrollbar-width:none;-ms-overflow-style:none}.carousel-track::-webkit-scrollbar{display:none}.fab-root{position:fixed;right:clamp(16px,2.5vw,28px);bottom:clamp(16px,2.5vw,28px);z-index:90}.fab-list,.fab-root{display:flex;flex-direction:column;align-items:flex-end;gap:12px}.fab-list{list-style:none;margin:0;padding:0}.fab-item{opacity:0;visibility:hidden;transform:translateY(14px) scale(.9);transition:opacity .22s ease,transform .22s cubic-bezier(.2,.9,.3,1.2),visibility .22s}.fab-list[data-open=true] .fab-item{opacity:1;visibility:visible;transform:none}.fab-link{display:flex;align-items:center;gap:10px}.fab-link,.fab-link:hover{color:inherit}.fab-label{background:rgba(19,19,24,.94);border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:8px 15px;font:600 13px Pretendard,sans-serif;letter-spacing:-.01em;color:#f4f4f6;white-space:nowrap;transition:border-color .18s ease,transform .18s ease}.fab-icon,.fab-label{box-shadow:0 8px 22px rgba(0,0,0,.42)}.fab-icon{width:52px;height:52px;flex-shrink:0;border-radius:50%;display:block;transition:transform .18s ease,box-shadow .18s ease}.fab-link:hover .fab-icon{transform:scale(1.08);box-shadow:0 8px 22px rgba(0,0,0,.42),0 0 0 4px var(--fab-glow)}.fab-link:hover .fab-label{border-color:rgba(255,255,255,.3);transform:translateX(-2px)}.fab-toggle{position:relative;width:60px;height:60px;border-radius:50%;border:none;cursor:pointer;color:#ffffff;background:linear-gradient(135deg,#ff9a4d,#ff7a2f);box-shadow:0 10px 28px rgba(0,0,0,.45),0 0 0 0 rgba(255,122,47,.45);transition:transform .2s ease,box-shadow .2s ease}.fab-toggle:hover{transform:scale(1.06);box-shadow:0 10px 28px rgba(0,0,0,.45),0 0 0 6px rgba(255,122,47,.22)}.fab-toggle:focus-visible{outline:2px solid #ffd1ac;outline-offset:3px}.fab-toggle-icon{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;opacity:0;transform:rotate(-90deg) scale(.6);transition:opacity .2s ease,transform .2s ease}.fab-toggle-icon[data-visible=true]{opacity:1;transform:none}@media (max-width:640px){.fab-icon{width:46px;height:46px}.fab-toggle{width:54px;height:54px}.fab-label{font-size:12px;padding:7px 13px}}@media (prefers-reduced-motion:reduce){.fab-icon,.fab-item,.fab-label,.fab-toggle,.fab-toggle-icon{transition-duration:.01ms}.fab-link:hover .fab-icon,.fab-toggle:hover{transform:none}}