:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px;min-height:100vh;padding-top:70px}h1{font-size:3.2em;line-height:1.1}#root{max-width:1280px;margin:0 auto}.header{position:fixed;margin:0 auto;top:0;left:0;right:0;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(0,0,0,.1);z-index:1000;transition:all .3s ease}.header-container{max-width:1200px;margin:0 auto;padding:0 2rem;display:flex;justify-content:space-between;align-items:center;height:70px}.logo a{font-family:Emilys Candy,serif;font-size:2.5rem;font-weight:700;color:#896e92;text-decoration:none;transition:color .3s ease;position:relative;top:9px}.logo a:hover{color:#000}.nav{display:flex;align-items:center}.nav-list{display:flex;list-style:none;margin:0;padding:0;gap:2rem}.nav-item{position:relative}.nav-link{color:#000;text-decoration:none;font-weight:500;font-size:1rem;padding:.5rem 0;transition:color .3s ease;position:relative}.nav-link:hover{color:#000}.nav-link:after{content:"";position:absolute;bottom:-5px;left:0;width:0;height:2px;color:#000;background:#896e92;transition:width .3s ease}.nav-link:hover:after{width:100%}.hamburger{display:none;flex-direction:column;justify-content:space-around;width:30px;height:30px;background:transparent;border:none;cursor:pointer;padding:0;z-index:1001}.hamburger-line{display:block;width:100%;height:3px;transition:all .3s ease;transform-origin:center}.hamburger-open .hamburger-line:nth-child(1){transform:rotate(45deg) translate(6px,6px)}.hamburger-open .hamburger-line:nth-child(2){opacity:0}.hamburger-open .hamburger-line:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}@media (max-width: 768px){.header-container{padding:0 1rem}.hamburger{display:flex;margin-left:auto}.nav{position:fixed;top:70px;left:0;right:0;background:#fffffffa;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(0,0,0,.1);transform:translateY(-100%);opacity:0;visibility:hidden;transition:all .3s ease;display:none}.nav-open{transform:translateY(0);opacity:1;visibility:visible;display:block}.nav-list{flex-direction:column;gap:0;padding:1rem 0}.nav-item{width:100%}.nav-link{display:block;padding:1rem 2rem;border-bottom:1px solid rgba(0,0,0,.05);font-size:1.1rem}.nav-link:after{display:none}.nav-link:hover{background:#646cff1a}}@media (max-width: 1024px) and (min-width: 769px){.header-container{padding:0 1.5rem}.nav-list{gap:1.5rem}.nav-link{font-size:.95rem}}@media (max-width: 480px){.header-container{padding:0 1rem;height:60px}.logo a{font-size:1.3rem}.nav{top:60px}.hamburger{width:25px;height:25px}.hamburger-line{height:2px}}@media (prefers-color-scheme: dark){.header{border-bottom:1px solid rgba(255,255,255,.1)}.nav-link:hover{color:#7e7e80}.hamburger-line{background:#000}.nav{border-bottom:1px solid rgba(255,255,255,.1)}.nav-link{border-bottom:1px solid rgba(255,255,255,.05)}}html{scroll-behavior:smooth}body{padding-top:70px}@media (max-width: 480px){body{padding-top:60px}}.initial-page{padding:2rem 0}.initial-page .container{max-width:1200px;margin:0 auto;padding:0 2rem;display:flex;align-items:center;justify-content:space-between;gap:2rem}.image-column{display:flex;justify-content:flex-end;align-items:flex-end;margin-left:auto}.initial-page .column{flex:1}.text-column .title{margin:0 0 .5rem;font-size:2.5rem;line-height:1.2}.text-column .subtitle{margin:0 0 1rem;font-size:1.25rem;color:#000}.text-column .description{margin:0 0 1.5rem;color:#000}.cta-group{display:flex;gap:1rem}.btn{display:inline-block;padding:.75rem 1.25rem;border-radius:8px;border:1px solid transparent;text-decoration:none;font-weight:600}.btn.primary{background:#896e92;color:#fff}.btn.primary:hover{background:#ebe5ed;color:#000}.btn.secondary{border-color:#999;color:#222}.btn.secondary:hover{background:#0000000a}.image-wrapper{background-size:contain;width:100%;max-width:480px;margin-left:auto;margin-right:0;aspect-ratio:1 / 1;border-radius:0 80px;overflow:hidden;box-shadow:0 10px 30px #0000001a}.hero-image{width:100%;height:100%;object-fit:cover;display:block}@media (max-width: 1024px){.text-column .title{font-size:2.25rem}}@media (max-width: 768px){.initial-page .container{flex-direction:column;text-align:center}.image-column{justify-content:center;align-items:center;margin-left:0}.image-wrapper{max-width:360px;margin-left:auto;margin-right:auto}.text-column .title{font-size:2rem}.text-column .subtitle{font-size:1.1rem}.cta-group{justify-content:center}}@media (prefers-color-scheme: dark){.text-column .subtitle,.text-column .description{color:#000}.btn.secondary{border-color:#555;color:#eee}.btn.secondary:hover{background:#ffffff0f}}@media (max-width: 400px) and (max-height: 616px){.btn{font-size:.75rem;padding:.6rem .9rem}}.journey-section{background:#f0f0f0;padding:3rem 0;scroll-margin-top:80px}.journey-container{max-width:1000px;padding:0 1.5rem}.journey-grid{display:block}.journey-grid:after{content:"";display:table;clear:both}.carousel-viewport{overflow:hidden;border-radius:12px;border:1px solid #e6e6ef;background:#fff;box-shadow:0 2px 10px #0000000a}.carousel-track{display:grid;grid-auto-flow:column;grid-auto-columns:100%;transition:transform .3s ease}.carousel-slide{position:relative;aspect-ratio:13 / 7}.carousel-slide img{display:block;width:100%;height:100%;object-fit:cover}.carousel-btn{position:absolute;top:50%;transform:translateY(-50%);background:#0000008c;color:#fff;border:none;width:36px;height:36px;border-radius:999px;display:grid;place-items:center;cursor:pointer}.carousel-btn.prev{left:8px}.carousel-btn.next{right:8px}.carousel-dots{display:flex;gap:6px;justify-content:center;padding:8px 0 0}.dot{width:8px;height:8px;border-radius:50%;border:1px solid #896e92;background:#fff}.dot.active{background:#896e92}.journey-title{margin:0 0 1rem;font-size:2rem}.journey-title-actions{display:flex;justify-content:center;margin-bottom:2rem}.journey-ask-btn{padding:12px 24px;box-shadow:#422800 4px 4px;font-size:1rem;font-weight:600;border-radius:25px;background:linear-gradient(135deg,#7b6cff,#ff6ec7);color:#fff;text-decoration:none;border:0;transition:transform .16s ease,box-shadow .2s ease,filter .2s ease;cursor:pointer;min-width:200px}.journey-ask-btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px #7b6cff73,0 4px 12px #ff6ec759;filter:brightness(1.05)}.journey-ask-btn:active{transform:translateY(0);box-shadow:0 4px 12px #7b6cff4d,0 2px 6px #ff6ec733}.journey-lead{font-size:1.1rem;line-height:1.7;margin-bottom:1rem}.journey-container p{font-size:1.1rem;color:#222;line-height:1.7;margin:0 0 1rem}.journey-divider{border:none;border-top:1px solid #d9d9d9;margin:1.5rem 0}.journey-subtitle{margin:0 0 .75rem;font-size:1.25rem}.journey-list{margin:0;font-size:1.1rem;padding-left:1.25rem}.journey-list li{margin-bottom:.5rem}.journey-inline-btn{margin-left:10px;display:inline-block;padding:6px 12px;font-size:.9rem;line-height:1.2;border-radius:999px;background:linear-gradient(135deg,#7b6cff,#ff6ec7);color:#fff;text-decoration:none;border:0;box-shadow:0 6px 18px #7b6cff59,0 2px 6px #ff6ec740;transition:transform .16s ease,box-shadow .2s ease,filter .2s ease;white-space:nowrap;cursor:pointer}.journey-inline-btn:hover{transform:translateY(-1px);box-shadow:0 10px 24px #7b6cff73,0 4px 12px #ff6ec759;filter:brightness(1.03);color:#000}.journey-inline-btn:active{transform:translateY(0);box-shadow:0 4px 12px #7b6cff4d,0 2px 6px #ff6ec733}@media (max-width: 768px){.journey-title{font-size:1.75rem}.journey-lead{font-size:1rem}}@media (prefers-color-scheme: dark){.journey-section{background:#fff}.journey-container p{color:#000}.journey-divider{border-top-color:#333}}.journey-carousel-cover{margin:0 0 2.5rem}@media (min-width: 900px){.journey-carousel-cover{float:none;width:100%;margin:0 0 2rem}}.cover-wrapper{width:100%;--slide-width: min(520px, 88%);--slide-height: clamp(170px, 34vw, 300px);--stage-height: calc(var(--slide-height) + 28px);--side-offset: clamp(90px, 22vw, 260px);--side-scale: .92}.cover-surface{position:relative;padding:clamp(12px,3vw,24px) clamp(8px,2.5vw,16px);background:transparent;border-radius:16px;width:100%;max-width:calc(var(--slide-width) + var(--side-offset) * 2 + 32px);margin:0 auto}.cover-stage{position:relative;height:var(--stage-height)}.cover-slide{position:absolute;top:50%;left:50%;width:var(--slide-width);height:var(--slide-height);transform:translate(-50%,-50%);transition:transform .4s ease,opacity .3s ease,filter .3s ease;border-radius:14px;overflow:hidden}.cover-slide img{width:100%;height:100%;object-fit:contain;background:#0e0e12;display:block}.cover-text{display:flex;flex-direction:column;gap:10px;width:100%;height:100%;padding:16px;background:#0e0e12;color:#f7f7f7}.cover-text-heading{margin:0;font-size:1rem}.cover-text-list{margin:0;padding-left:18px;font-size:.95rem;line-height:1.5}.cover-text-list li{margin-bottom:6px}.cover-slide.center{z-index:3;box-shadow:0 10px 25px #00000040}.cover-slide.left{transform:translate(calc(-50% - var(--side-offset)),-50%) scale(var(--side-scale));filter:blur(1px) saturate(.9);opacity:.75;z-index:2}.cover-slide.right{transform:translate(calc(-50% + var(--side-offset)),-50%) scale(var(--side-scale));filter:blur(1px) saturate(.9);opacity:.75;z-index:2}.cover-slide.hidden{opacity:0;pointer-events:none}.cover-btn{position:absolute;top:50%;transform:translateY(-50%);background:#0009;color:#fff;border:none;width:clamp(32px,4vw,40px);height:clamp(32px,4vw,40px);border-radius:999px;display:grid;place-items:center;cursor:pointer}.cover-btn.prev{left:8px}.cover-btn.next{right:8px}@media (max-width: 700px){.cover-wrapper{--side-offset: clamp(80px, 22vw, 160px);--side-scale: .92}.cover-text-heading{font-size:clamp(.95rem,2.6vw,1.05rem)}.cover-text-list{font-size:clamp(.85rem,2.4vw,.95rem)}}.chatmodal-root{position:fixed;inset:0;background:#00000073;display:grid;place-items:center;z-index:9999}.chatmodal-card{width:min(720px,92vw);height:min(520px,86vh);background:#fff;border-radius:16px;box-shadow:0 20px 60px #00000040;display:grid;grid-template-rows:auto 1fr auto;overflow:hidden}.chatmodal-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid #eee}.chatmodal-title{margin:0;font-size:1.05rem}.chatmodal-close{border:none;background:transparent;font-size:18px;cursor:pointer}.chatmodal-viewport{padding:2rem;overflow:auto;background:#fafafa;position:relative}.chatmsg{display:flex;margin-bottom:10px}.chatmsg.user{justify-content:flex-end}.chatmsg.assistant{justify-content:flex-start}.chatmsg .bubble{max-width:75%;padding:10px 12px;background:#f1f1ff;position:relative}.chatmsg.user .bubble{border-radius:12px 0 12px 12px;background:#e6f7ff}.chatmsg.assistant .bubble{border-radius:0 12px 12px}.chatmsg.assistant .bubble:after{content:"";position:absolute;top:-.5px;left:-9px;width:0;height:0;border-style:solid;border-width:0 10px 10px 0;border-color:transparent #f1f1ff transparent transparent}.chatmsg.user .bubble:after{content:"";position:absolute;top:-.5px;right:-10px;width:0;height:0;border-style:solid;border-width:0 0 10px 10px;border-color:transparent transparent transparent #e6f7ff}.chatmodal-inputbar{display:grid;grid-template-columns:1fr auto;gap:8px;padding:10px;border-top:1px solid #eee;background:#fff}.chatmodal-inputbar textarea{resize:none;border:1px solid #ddd;border-radius:10px;padding:8px 10px;font-size:.95rem}.chatmodal-inputbar textarea:focus,.chatmodal-inputbar textarea:focus-visible{outline:none;border-color:#ddd;box-shadow:none}.sendbtn{border:none;border-radius:10px;padding:8px 14px;background:linear-gradient(135deg,#7b6cff,#ff6ec7);color:#fff;cursor:pointer}.chatmodal-loader-bubble{display:flex;justify-content:center;align-items:center;min-height:40px}.loader{transform:rotate(45deg);perspective:1000px;border-radius:50%;width:32px;height:32px;color:#896e92;position:relative;display:inline-block}.loader:before,.loader:after{content:"";display:block;position:absolute;top:0;left:0;width:inherit;height:inherit;border-radius:50%;transform:rotateX(70deg);animation:1s spin linear infinite}.loader:after{color:#896e92;transform:rotateY(70deg);animation-delay:.4s}@keyframes rotate{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes rotateccw{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(-360deg)}}@keyframes spin{0%,to{box-shadow:.2em 0 0 0 currentcolor}12%{box-shadow:.2em .2em 0 0 currentcolor}25%{box-shadow:0 .2em 0 0 currentcolor}37%{box-shadow:-.2em .2em 0 0 currentcolor}50%{box-shadow:-.2em 0 0 0 currentcolor}62%{box-shadow:-.2em -.2em 0 0 currentcolor}75%{box-shadow:0 -.2em 0 0 currentcolor}87%{box-shadow:.2em -.2em 0 0 currentcolor}}.queries-container{margin-top:12px;padding-top:12px;border-top:1px solid #e8e8ff}.queries-title{margin:0 0 10px;font-size:.85rem;color:#666;font-weight:500}.queries-buttons{display:flex;gap:6px;flex-wrap:wrap}.query-btn{background:#f1f1ff;border:1px solid transparent;border-radius:16px;padding:6px 12px;color:#7b3e8a;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.query-btn:hover:not(:disabled){background:#f1f1ff;border-color:#7b3e8a;transform:translateY(-1px)}.query-btn:active:not(:disabled){transform:translateY(0)}.query-btn:disabled{opacity:.6;cursor:not-allowed}.skills-section{padding:4rem 1rem}.skills-container{max-width:1000px;margin:0 auto}.skills-title{font-size:1.4rem;margin-bottom:1.5rem;text-align:center}.skills-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1.5rem}.skill-item{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1rem;border-radius:12px;background:#f5f5f5;gap:.5rem}.skill-label{font-size:.95rem;font-weight:600}@media (max-width: 630px){.skills-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 400px){.skills-grid{grid-template-columns:repeat(2,1fr)}}.work-section{padding:4rem 1rem}.work-container{max-width:1100px;margin:0 auto}.work-title{font-size:1.4rem;font-weight:700}.work-subtitle{margin:.5rem 0 2rem;color:#555;font-size:1.1rem}.work-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:5rem}.work-card{border:none;border-radius:12px;background:#fff;overflow:hidden;position:relative}.work-preview-link{display:block;color:inherit;text-decoration:none;position:relative}.work-preview-link,.work-preview-link:link,.work-preview-link:visited,.work-preview-link:hover,.work-preview-link:active,.work-preview-link:focus{color:inherit;text-decoration:none;outline:none}.work-preview-wrapper{position:relative}.work-preview{--r: 14px;--s: 29px;--x: 16px;--y: 8px;--border-width: 2px;border:none;width:100%;height:20rem;aspect-ratio:1 / 1;background:var(--accent, #eef2ff);border-radius:var(--r);position:relative;--_m: / calc(2 * var(--r)) calc(2 * var(--r)) radial-gradient(#000 70%, #0000 72%);--_g: conic-gradient(at calc(100% - var(--r)) var(--r), #0000 25%, #000 0);--_d: calc(var(--s) + var(--r));mask:calc(100% - var(--_d) - var(--x)) 0 var(--_m),100% calc(var(--_d) + var(--y)) var(--_m),radial-gradient(var(--s) at 100% 0,#0000 99%,#000 calc(100% + 1px)) calc(-1 * var(--r) - var(--x)) calc(var(--r) + var(--y)),var(--_g) calc(-1 * var(--_d) - var(--x)) 0,var(--_g) 0 calc(var(--_d) + var(--y));-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.work-preview:before{content:"";position:absolute;inset:calc(-1 * var(--border-width));border-radius:var(--r);background:var(--accent-dark, #8aa1d6);--_m: / calc(2 * var(--r)) calc(2 * var(--r)) radial-gradient(#000 70%, #0000 72%);--_g: conic-gradient(at calc(100% - var(--r)) var(--r), #0000 25%, #000 0);--_d: calc(var(--s) + var(--r));mask:calc(100% - var(--_d) - var(--x)) 0 var(--_m),100% calc(var(--_d) + var(--y)) var(--_m),radial-gradient(var(--s) at 100% 0,#0000 99%,#000 calc(100% + 1px)) calc(-1 * var(--r) - var(--x)) calc(var(--r) + var(--y)),var(--_g) calc(-1 * var(--_d) - var(--x)) 0,var(--_g) 0 calc(var(--_d) + var(--y));-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;z-index:1}.work-preview:after{content:"";position:absolute;inset:var(--border-width);border-radius:calc(var(--r) - var(--border-width));background:var(--accent, #eef2ff);background-image:var(--screenshot);background-size:cover;background-position:center;--_m: / calc(2 * var(--r)) calc(1.7 * var(--r)) radial-gradient(#000 70%, #0000 72%);--_g: conic-gradient(at calc(100% - var(--r)) var(--r), #0000 25%, #000 0);--_d: calc(var(--s) + var(--r));mask:calc(100% - var(--_d) - var(--x)) 0 var(--_m),100% calc(var(--_d) + var(--y)) var(--_m),radial-gradient(var(--s) at 100% 0,#0000 98%,#000 calc(100% + 1px)) calc(-1 * var(--r) - var(--x)) calc(var(--r) + var(--y)),var(--_g) calc(-1 * var(--_d) - var(--x)) 0,var(--_g) 0 calc(var(--_d) + var(--y));-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;z-index:2}.work-content{padding:1rem}.work-card-title{margin:.8rem 0 1rem;font-size:1.3rem;font-weight:700}.work-card-desc{margin:0 0 .75rem;color:#444;font-size:.95rem;line-height:1.4}.work-tags{display:flex;flex-wrap:wrap;gap:.5rem}.work-tag{border:1px solid #e0e0e0;background:#fafafa;padding:.4rem .6rem;border-radius:8px;font-size:.85rem;display:flex;align-items:center;gap:.4rem;transition:all .2s ease}.circle-icon{position:absolute;top:3px;right:5px;width:40px;height:40px;background-color:#fff;border:2px solid var(--accent-dark, #3FB8AF);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 5px 10px #0000001f;cursor:pointer;transition:transform .25s ease;z-index:10}.work-preview-link:hover .circle-icon{transform:translate(-3px,-3px)}.circle-icon svg{width:22px;height:22px;stroke:var(--accent-dark, #3FB8AF);stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}@media (max-width: 840px){.work-grid{grid-template-columns:1fr}}.tag{border:1px solid #e9dfdf!important;border-color:#d0d0d0;background:#fafafa;padding:.4rem .6rem;border-radius:8px;font-size:.85rem;display:inline-flex;align-items:center;gap:.4rem;transition:all .2s ease;margin:.2rem}.tag-icon{width:16px;height:16px;flex-shrink:0}.tag-text{white-space:nowrap}.tag:hover{background:#f0f0f0;border-color:#d0d0d0;transform:translateY(-1px)}.experience-card .tag{margin:.1rem .2rem .1rem 0}.work-tag{border:1px solid #888888;background:#fafafa;padding:.4rem .6rem;border-radius:8px;font-size:.85rem;display:flex;align-items:center;gap:.4rem;transition:all .2s ease}.work-tag-icon{width:16px;height:16px;flex-shrink:0}.work-tag-text{white-space:nowrap}.skill-item{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;border-radius:12px;background:#fff;border:1px solid #e0e0e0;transition:all .2s ease}.skill-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.skill-label{font-size:.9rem;font-weight:500;color:#333}.experience-section{padding:4rem 0}.experience-wrapper{max-width:1200px;margin:0 auto;padding:0 2rem}.experience-list{display:flex;flex-wrap:wrap;gap:1.25rem}.experience-list .experience-card{flex:1 1 calc(50% - .625rem)}.experience-title{font-size:1.4rem;margin:0 0 1.5rem}.experience-card{width:100%;background:#ffffff0a;border:none;position:relative;box-shadow:0 8px 20px #00000026;border-radius:12px;padding:1.25rem 1.25rem 1.25rem 2.25rem;margin-bottom:1.25rem}.experience-card:before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:7px;background:#896e92;border-radius:3px;box-shadow:0 0 10px #896e9273}.experience-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.role{font-weight:700;font-size:1.05rem}.company{font-weight:600;opacity:.85}.meta{font-size:.9rem;opacity:.75}.summary{margin:.75rem 0;line-height:1.6}.highlights{margin:.5rem 0 .75rem 1rem}.highlights li{margin:.25rem 0}.tags{display:flex;flex-wrap:wrap;gap:.5rem}.tag{font-size:.75rem;padding:.25rem .5rem;border-radius:999px;background:#fafafa;border:1px solid rgba(255,255,255,.12)}@media (max-width: 768px){.experience-list{gap:1rem}.experience-list .experience-card{flex:1 1 100%}.experience-card{padding:1rem 1rem 1rem 2rem}.experience-header{flex-direction:column;align-items:flex-start;gap:.35rem}.experience-title{font-size:1.25rem}.meta{font-size:.85rem}}@media (max-width: 480px){.experience-section{padding:3rem 0}.experience-wrapper{padding:0 1rem}.experience-list{gap:.9rem}.experience-title{font-size:1.1rem}.role{font-size:1rem}.company,.summary{font-size:.95rem}.experience-card{padding:.9rem .9rem .9rem 1.75rem}.experience-card:before{width:5px;top:8px;bottom:8px}.highlights{margin-left:.75rem}.highlights li{margin:.2rem 0}.tags{gap:.4rem}.tag{font-size:.7rem;padding:.2rem .45rem}}.contact-section{color:#222;padding:4rem 1rem}.contact-wrapper{max-width:1100px;margin:0 auto}.contact-header h2{margin:0 0 .25rem;font-size:2rem}.contact-header p{margin:0 0 2rem;color:#4a4a4a}.contact-grid{display:grid;grid-template-columns:1fr;gap:1.25rem}@media (min-width: 900px){.contact-grid{grid-template-columns:1fr 1fr}}.contact-card,.contact-form-card{background:#fff;border:1px solid #e6e6ef;border-radius:12px;padding:1.25rem;box-shadow:0 2px 10px #0000000a}.contact-card h3,.contact-form-card h3{margin-top:0;margin-bottom:.75rem}.contact-list{list-style:none;padding:0;margin:0 0 1rem}.contact-list li{display:flex;align-items:center;gap:.75rem;padding:.5rem 0}.contact-list .icon{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;background:#896e92;color:#fff;border-radius:10px;font-size:18px}.contact-list .label{font-weight:600;margin-bottom:2px}.social h4{margin:.25rem 0 .5rem}.social-row{display:flex;gap:.5rem}.social-btn{width:36px;height:36px;border-radius:8px;border:1px solid #896e92;display:inline-flex;align-items:center;justify-content:center;color:#fff;background:#896e92;text-decoration:none}.social-btn:hover{filter:brightness(.97);border-color:#896e92}.linkedin-btn:hover,.social-btn:hover{background:#d0bbd8;border-color:#d0bbd8;color:#000}.contact-form,.contact-form .row{display:grid;gap:.75rem}@media (min-width: 600px){.contact-form .row{grid-template-columns:1fr 1fr}}.contact-form label{display:grid;gap:6px;font-size:.95rem}.contact-form input,.contact-form textarea{border:1px solid #dfe3f0;border-radius:10px;padding:.7rem .9rem;font:inherit;background:#fbfcff;color:#1b1b1f}.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:#896e92;box-shadow:0 0 0 3px #7a5cff26}.submit-btn{margin-top:.25rem;padding:.75rem 1rem;border-radius:10px;border:1px solid #896e92;background:#896e92;color:#fff;font-weight:600;cursor:pointer;position:relative;display:inline-grid;grid-auto-flow:column;align-items:center;gap:.5rem;overflow:hidden}.submit-btn:hover{background:#d0bbd8;border-color:#ebe5ed;color:#000;filter:none}.submit-btn .btn-text{transition:transform .18s ease,opacity .18s ease;display:inline-block}.submit-btn .btn-text-hover{position:absolute;left:50%;transform:translate(-50%,100%);opacity:0;transition:transform .2s ease,opacity .2s ease;white-space:nowrap}.submit-btn:hover .btn-text{transform:translateY(-120%);opacity:0}.submit-btn:hover .btn-text-hover{transform:translate(-50%);opacity:1}.contact-modal-backdrop{position:fixed;inset:0;background:#00000073;display:grid;place-items:center;z-index:9999}.contact-modal{background:#fff;color:#111;width:min(520px,92vw);border-radius:12px;border:1px solid #e6e6ef;box-shadow:0 20px 60px #00000040;padding:1rem}.contact-modal header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.contact-modal .close-btn{border:none;background:transparent;font-size:18px;cursor:pointer}.contact-modal main{padding:.25rem 0 .75rem}.contact-modal .ok-btn{border:1px solid #896e92;background:#896e92;color:#fff;border-radius:10px;padding:.5rem .9rem;cursor:pointer}.scroll-to-top{position:fixed;bottom:2rem;right:2rem;width:50px;height:50px;background:#896e92;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #896e924d;transition:all .3s ease;z-index:1000;opacity:0;transform:translateY(20px);animation:fadeInUp .3s ease forwards}.scroll-to-top:hover{transform:translateY(-3px);box-shadow:0 6px 20px #896e9266}.scroll-to-top:active{transform:translateY(-1px)}.scroll-to-top svg{width:24px;height:24px;stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.scroll-to-top{bottom:1.5rem;right:1.5rem;width:45px;height:45px}.scroll-to-top svg{width:20px;height:20px}}
