.intro{width:100%;padding:100px}.subtitle{color:#555}.chat-intro-copy{margin-top:.5rem;color:#777}.chat-container{flex:1;min-width:300px;width:100%;display:flex;flex-direction:column;justify-content:flex-end}.chat-box{width:100%;display:flex;flex-direction:column;align-items:stretch;gap:1.25rem}.chat-content{padding-bottom:1rem;display:flex;flex-direction:column}.chat-message{margin-bottom:1rem;padding:.75rem 1rem;border-radius:16px;font-size:1rem;white-space:pre-wrap;word-break:break-word;max-width:75%}.chat-message.user{align-self:flex-end;background:#000;color:#fff;display:inline-block;border-radius:16px 0 16px 16px}.chat-message.ai{align-self:flex-start;background:#f0f0f0;color:#000;border-radius:16px 16px 16px 0;text-align:left;display:flex;flex-direction:column;gap:.75rem}.chat-media-grid{display:flex;flex-wrap:wrap;gap:.75rem;width:100%}.chat-media-grid>*{flex:1 1 200px}.chat-media-link{text-decoration:none;color:inherit;display:inline-flex;width:100%;max-width:220px}.chat-media-card{background:#fff;margin:.25rem 0;border-radius:16px;overflow:hidden;box-shadow:0 12px 30px #00000014;width:100%;max-width:220px;transition:transform .25s ease,box-shadow .25s ease}.chat-media-card img{display:block;width:100%;height:auto}.chat-media-text{padding:.75rem .85rem .9rem;display:flex;flex-direction:column;gap:.25rem}.chat-media-title{margin:0;font-size:.95rem;font-weight:600}.chat-media-desc{margin:0;font-size:.85rem;color:#555}.chat-media-link:hover .chat-media-card,.chat-media-card:hover{box-shadow:0 16px 35px #0000001f}@media(max-width:600px){.chat-media-grid>*,.chat-media-link,.chat-media-card{max-width:100%}}.chat-preview-note{font-size:.95rem;color:#666;margin-bottom:.5rem;text-align:center}.thinking-message{padding:.75rem 1rem;line-height:1.4;white-space:nowrap}.chat-input{display:flex;flex-direction:column;gap:1rem;align-items:center}.chat-input-field{position:relative;width:100%}.chat-input input{width:100%;padding:1.1rem 3.75rem 1.1rem 1.4rem;font-size:1rem;border-radius:1.5rem;border:none;background:#f0f0f0;outline:none;transition:box-shadow .2s ease}.chat-input input:focus{box-shadow:0 0 0 3px #00000014}.chat-input input:focus::placeholder{color:transparent}.chat-send-button{position:absolute;top:50%;right:.6rem;width:36px;height:36px;border-radius:18px;border:none;background:#fff;color:#000;display:inline-flex;align-items:center;justify-content:center;transform:translateY(-50%);transition:background .2s ease,transform .2s ease}.chat-send-button:hover{background:#222;color:#fff;transform:translateY(-50%) scale(1.03)}.chat-send-button:active{transform:translateY(-50%)}.chat-send-button svg{pointer-events:none}.preset-questions-viewport{width:100%}.preset-questions{display:flex;gap:1rem;font-size:.9rem;color:#555;user-select:none;position:relative}.preset-question{flex:0 0 auto;min-width:200px;padding:.85rem 1.1rem;border:1px solid rgba(0,0,0,.12);border-radius:20px 0 20px 20px;background:#ffffffe6;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;cursor:pointer}.preset-question:hover{color:#fff;background-color:#000}.projects.home{box-sizing:border-box}.projects.home .project-grid{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:16px;width:100%}#featured-work{text-align:center;padding-bottom:2rem;font-weight:400}@media(max-width:768px){.projects.home .project-grid{grid-template-columns:1fr}}body[data-page=home] main>section{margin-left:2rem;margin-right:2rem}@media(max-width:768px){body[data-page=home] main>section{margin-left:1rem;margin-right:1rem}}@keyframes blink{0%{opacity:.2}20%{opacity:1}to{opacity:.2}}.dot{display:inline-block;animation:blink 1.4s infinite both}.dot:nth-child(2){animation-delay:.2s}.dot:nth-child(3){animation-delay:.4s}body[data-page=home] .chat-container{align-items:center}body[data-page=home] .chat-content{display:none}body[data-page=home] .chat-input{width:min(80vw,720px);margin:0 auto}body[data-page=home] .preset-questions-viewport{width:100vw;max-width:none;overflow:hidden;margin:.35rem calc((100vw - 100%)/-2) .5rem}body[data-page=home] .preset-questions{gap:1rem;animation:presetMarquee 18s linear infinite;will-change:transform;align-items:stretch}body[data-page=home] .preset-questions:hover{animation-play-state:paused}body[data-page=home] .preset-question{min-width:220px}.chat-page-hero{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:1.25rem;padding:96px 5vw 5vw;text-align:center}.chat-page-hero.hide-intro .chat-page-intro{display:none}.chat-page-hero.hide-intro{gap:.5rem}.chat-page-intro{max-width:520px}body[data-page=chat] .chat-container{max-width:720px;width:100%;flex:1;min-height:0}body[data-page=chat] .chat-box{background:#fff;border-radius:24px;padding:2rem;display:flex;flex-direction:column;align-items:stretch;gap:1.5rem;flex:1;min-height:0;box-sizing:border-box}body[data-page=chat] .chat-content{flex:1;min-height:0;padding:1rem;border-radius:16px;overflow-y:auto}body[data-page=chat] .chat-input{gap:1.25rem;width:100%;align-items:stretch;margin-top:auto}body[data-page=chat] .preset-questions{flex-direction:column;gap:.75rem;animation:none;align-items:stretch}body[data-page=chat] .preset-questions-viewport{width:100%;overflow:visible;display:none}body[data-page=chat] .chat-input input{background:#f5f5f5}body[data-page=chat] .preset-question{width:100%;min-width:0;justify-content:flex-start;white-space:normal;text-align:left}body[data-page=chat]{height:100vh;height:100dvh;display:flex;flex-direction:column;overflow:hidden}body[data-page=chat] main{flex:1;min-height:0;display:flex;overflow:hidden}body[data-page=chat]>footer{flex-shrink:0}body[data-page=chat] .chat-page-hero{flex:1;width:100%;min-height:0;padding-bottom:.75rem;overflow:hidden}body[data-page=chat] .chat-page-hero.hide-intro{padding-top:76px}body[data-page=chat] .chat-page-hero.hide-intro .chat-box{padding-top:1rem}body[data-page=chat] .chat-page-hero.hide-intro .chat-content{padding-top:.25rem}body[data-page=chat] .chat-page-intro{flex-shrink:0}body[data-page=chat] .chat-container,body[data-page=chat] .chat-box{overflow:hidden}body[data-page=chat] .chat-input,body[data-page=chat] .chat-input-field{overflow:visible}@keyframes presetMarquee{0%{transform:translate(0)}to{transform:translate(-50%)}}@media(max-width:768px){body[data-page=home] .chat-input,body[data-page=home] .preset-questions-viewport{width:100%}body[data-page=home] .preset-question{min-width:180px}.chat-input input{padding-right:3.25rem}.chat-send-button{width:40px;height:40px;right:10px}body[data-page=chat] .chat-page-intro{margin:0 auto;text-align:center}body[data-page=chat] .chat-box{padding:1.5rem}}
