/* holos.works */
/* Colors: #F5F0E8, #EDE6D6, #0D7377, #074B4F, #C4A265, #D4A843, #3B5249, #1A1A18, #C7625A */
*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }
body { font-family: 'Literata', serif; font-weight: 350; font-size: 16px; line-height: 1.65; background: #F5F0E8; color: #1A1A18; overflow-x: hidden; }
.hero { min-height: 100vh; display: flex; align-items: center; justify-content: center; background: #F5F0E8; }
.organism { width: clamp(200px, 40vw, 400px); height: clamp(200px, 40vw, 400px); border: 1px solid #C4A265; border-radius: 50%; position: relative; opacity: 0; animation: drawIn 3.5s ease forwards; }
.organism::before { content: ""; position: absolute; top: 15%; left: 15%; width: 70%; height: 70%; border: 1px solid #0D7377; border-radius: 50%; opacity: 0.6; }
.organism::after { content: "holos"; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); font-family: 'Fraunces', serif; font-weight: 500; font-size: clamp(1.5rem, 3vw, 2.5rem); color: #1A1A18; letter-spacing: -0.02em; }
@keyframes drawIn { 0% { opacity: 0; transform: scale(0.3); } 100% { opacity: 1; transform: scale(1); } }
.section { padding: 100px 40px; display: flex; flex-direction: column; align-items: center; text-align: center; background: #F5F0E8; }
.section-title { font-family: 'Fraunces', serif; font-weight: 500; font-size: clamp(2rem, 5vw, 3.5rem); color: #1A1A18; letter-spacing: -0.02em; margin-bottom: 48px; }
.hex-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; max-width: 720px; width: 100%; }
.hex-cell { background: #EDE6D6; clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%); padding: 48px 20px; text-align: center; transition: background 0.4s ease; }
.hex-cell:hover { background: #0D7377; color: #F5F0E8; }
.hex-cell h3 { font-family: 'Fraunces', serif; font-weight: 500; font-size: 17px; color: #0D7377; margin-bottom: 8px; }
.hex-cell:hover h3 { color: #F5F0E8; }
.hex-cell p { font-size: 13px; color: #3B5249; }
.hex-cell:hover p { color: #EDE6D6; }
.section-dark { background: #1A1A18; padding: 120px 40px; }
.confluence-text { font-family: 'Fraunces', serif; font-weight: 500; font-size: clamp(1.5rem, 4vw, 3rem); color: #F5F0E8; letter-spacing: -0.02em; }
.site-footer { text-align: center; padding: 48px 40px; background: #F5F0E8; }
.site-footer p { font-family: 'DM Mono', monospace; font-size: 12px; color: #3B5249; letter-spacing: 0.08em; text-transform: uppercase; }
@media (max-width: 768px) { .hex-grid { grid-template-columns: repeat(2, 1fr); } .section { padding: 60px 24px; } }
