:root{--safe-top: env(safe-area-inset-top, 0px);--safe-right: env(safe-area-inset-right, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--layout-vh: 100dvh;--layout-vw: 100vw;font-family:Avenir Next,Segoe UI,Helvetica Neue,Arial,sans-serif;color:#3a2e24;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}html,body{margin:0;padding:0;width:100%;height:100%;overflow-x:hidden;overflow-y:hidden;background:#8c7b6c}#root{width:100%;width:var(--layout-vw, 100vw);height:100svh;height:100lvh;height:100dvh;height:var(--layout-vh, 100dvh);background:radial-gradient(circle at 50% 50%,#fcf7eb,#d8c0a8 40%,#8c7b6c)}#canvas-container{width:100%;height:100%;touch-action:pan-y}.navbar{position:fixed;top:0;left:0;right:0;z-index:10;display:flex;justify-content:space-between;align-items:center;padding-top:calc(var(--safe-top) + clamp(.75rem,1.25vw,1.2rem));padding-right:calc(var(--safe-right) + clamp(1rem,2.2vw,2.5rem));padding-bottom:clamp(.4rem,.8vw,.6rem);padding-left:calc(var(--safe-left) + clamp(1rem,2.2vw,2.5rem));pointer-events:none}.navbar-logo{font-weight:700;font-size:clamp(1rem,1.35vw,1.5rem);letter-spacing:clamp(.08em,.2vw,.15em);color:#3a2e24;pointer-events:auto}.navbar-links{display:flex;gap:clamp(1rem,2vw,2rem);pointer-events:auto}.navbar-links a{text-decoration:none;font-size:clamp(.9rem,1vw,1.2rem);font-weight:500;letter-spacing:.08em;color:#3a2e24;transition:opacity .12s ease}.navbar-links a:hover{opacity:.6}.hero-statement{position:fixed;top:calc(var(--safe-top) + clamp(4.8rem,9vw,6rem));left:50%;transform:translate(-50%);z-index:10;width:min(88vw,820px);text-align:center;pointer-events:none}.hero-statement p{margin:0;font-size:clamp(.95rem,1.1vw,1.15rem);font-weight:400;line-height:1.7;letter-spacing:.02em;color:#3a2e24}.contact-overlay,.about-overlay{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding-top:calc(var(--safe-top) + 1rem);padding-right:calc(var(--safe-right) + 1rem);padding-bottom:calc(var(--safe-bottom) + 1rem);padding-left:calc(var(--safe-left) + 1rem);background:#3a2e2480;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:fadeIn .25s ease;box-sizing:border-box}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.contact-card,.about-card{position:relative;background:#fcf7eb;border:1px solid rgba(58,46,36,.12);animation:slideUp .3s ease;box-sizing:border-box}.contact-card{width:min(92vw,400px);max-height:min(85dvh,calc(var(--layout-vh, 100dvh) - 4rem));overflow-y:auto;padding:clamp(1.5rem,3vw,2.5rem) clamp(1.25rem,4vw,3rem)}.about-card{width:min(92vw,900px);max-height:min(85dvh,calc(var(--layout-vh, 100dvh) - 4rem));overflow-y:auto;padding:clamp(1.75rem,3.5vw,3rem) clamp(1.4rem,4.2vw,3.5rem)}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.contact-close,.about-close{position:absolute;top:1rem;right:1.2rem;background:none;border:none;font-size:1.1rem;color:#3a2e24;cursor:pointer;opacity:.5;transition:opacity .15s}.contact-close:hover,.about-close:hover{opacity:1}.contact-links{display:flex;flex-direction:column;gap:clamp(.9rem,2vw,1.2rem)}.contact-row{display:flex;flex-direction:column;gap:.2rem}.contact-label,.about-label{font-size:.7rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:#8c7b6c}.contact-email-row{display:flex;align-items:center;gap:.5rem}.contact-value{font-size:clamp(.94rem,1.5vw,1rem);font-weight:500;color:#3a2e24;text-decoration:none;transition:opacity .15s}.contact-value:hover{opacity:.6}.contact-copy{display:flex;align-items:center;justify-content:center;background:none;border:1px solid rgba(58,46,36,.2);border-radius:4px;padding:.3rem;cursor:pointer;color:#3a2e24;opacity:.5;transition:opacity .15s}.contact-copy:hover{opacity:1}.about-content{display:flex;align-items:flex-start;gap:clamp(1.6rem,4vw,3rem)}.about-photo{width:clamp(180px,18vw,240px);height:clamp(220px,22vw,300px);object-fit:cover;flex-shrink:0}.about-text{display:flex;flex-direction:column;gap:.8rem;padding-top:.5rem}.about-paragraph{font-size:clamp(.94rem,1.1vw,1rem);font-weight:400;line-height:1.6;color:#3a2e24;margin:0}.scroll-indicator{position:fixed;bottom:calc(var(--safe-bottom) + clamp(1.1rem,3vw,2rem));left:50%;transform:translate(-50%);z-index:10;display:flex;flex-direction:column;align-items:center;gap:.5rem;pointer-events:none;animation:fadeInUp 1s ease 1.5s both;transition:opacity .5s ease}.scroll-indicator.hidden{animation:fadeOut .5s ease forwards}.scroll-indicator-text{font-size:.75rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:#3a2e24;opacity:.6}.scroll-indicator-line{width:1px;height:2rem;background:#3a2e24;opacity:.4;animation:scrollPulse 2s ease-in-out infinite}@keyframes fadeInUp{0%{opacity:0;transform:translate(-50%) translateY(10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes fadeOut{to{opacity:0;visibility:hidden}}@keyframes scrollPulse{0%,to{opacity:.4;transform:scaleY(1)}50%{opacity:.7;transform:scaleY(1.3)}}@media(max-width:960px){.hero-statement{top:calc(var(--safe-top) + clamp(4.2rem,12vw,5.6rem))}.navbar-links{gap:clamp(.75rem,3.3vw,1.4rem)}}@media(max-width:640px){.navbar{align-items:flex-start;flex-direction:column;gap:.35rem}.about-content{flex-direction:column;align-items:center;text-align:center;gap:1.6rem}.about-text{align-items:center}}::-webkit-scrollbar{display:none}html{-ms-overflow-style:none;scrollbar-width:none}
