@import "https://fonts.googleapis.com/css2?family=Raleway:wght@400;500;600;700;800&display=swap";:root{--background:#fff;--accent:#5b4fe8;--muted-accent:#3a32a3;--text-primary:#000;--text-secondary:#555;--border:#e2e2e2;--font-sans:"Raleway", sans-serif;--card-bg:#f7f7fc}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}nav{justify-content:space-evenly;align-items:center;min-width:10em;font-size:1.5em;display:flex}a{text-decoration:none}nav a{color:var(--text-primary);letter-spacing:.05em;border-radius:4px;padding:.3em .6em;font-family:Raleway,sans-serif;font-weight:600;transition:background-color .2s,color .2s}nav a:hover{color:var(--accent)}#contactNav{color:#5b4fe8;border:.5px solid #5b4fe8;border-radius:6px;align-items:center;height:3em;padding:5px 14px;font-size:.6em;font-weight:600;display:flex}#contactNav:hover{color:#fff;background-color:#5b4fe8}#topBar{justify-content:space-between;align-items:center;max-width:90%;min-height:13vh;margin:auto;display:flex}#mainTitle{color:var(--text-primary);font-size:2.2em;font-family:var(--font-sans);white-space:nowrap;margin:0;padding-bottom:0;padding-right:.25em}.burger{cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:space-between;width:1.8em;height:1.3em;padding:0;display:none}.burger span{background-color:var(--text-primary);transform-origin:50%;border-radius:3px;width:100%;height:3px;transition:transform .25s,opacity .25s;display:block}.burger--open span:first-child{transform:translateY(.615em)rotate(45deg)}.burger--open span:nth-child(2){opacity:0}.burger--open span:nth-child(3){transform:translateY(-.615em)rotate(-45deg)}@media (width<=750px){.burger{display:flex}nav{background-color:var(--accent);z-index:100;flex-direction:column;align-items:center;gap:0;font-size:1.2em;display:none;position:absolute;top:100%;left:0;right:0}nav.nav--open{display:flex}nav a{text-align:center;border-bottom:1px solid var(--accent-dark);width:100%;padding:.8em 1em}#topBarParent{position:relative}}#heroParentContainer{width:100%;padding:100px 5% 80px}#heroContentDiv{text-align:left;flex-direction:column;align-items:flex-start;gap:20px;width:70%;margin:auto;display:flex}#heroSubtitle{letter-spacing:.1em;color:var(--accent);text-transform:uppercase;margin-bottom:14px;font-size:11px;font-weight:500}#heroContentDiv h1{margin:0;font-size:clamp(2rem,5vw,3.5rem);font-weight:800;line-height:1.15}#heroContentDiv>p{color:var(--text-secondary);max-width:560px;margin:0;font-size:1.1rem}#heroButtons{flex-wrap:wrap;gap:12px;display:flex}.btn-primary{background-color:var(--accent);color:#fff;font-size:1rem;font-family:var(--font-sans);cursor:pointer;border:none;border-radius:6px;padding:.75em 1.75em;font-weight:600;transition:background-color .2s}.btn-primary:hover{background-color:var(--muted-accent)}.btn-ghost{color:var(--accent);border:1.5px solid var(--accent);font-size:1rem;font-family:var(--font-sans);cursor:pointer;background:0 0;border-radius:6px;padding:.75em 1.75em;font-weight:600;transition:background-color .2s,color .2s}.btn-ghost:hover{background-color:var(--accent);color:#fff}@media (width<=750px){#heroContentDiv{width:90%}}#portfolio{padding:80px 5%}#portfolioInner{max-width:1100px;margin:0 auto}#portfolioLabel{letter-spacing:.1em;color:var(--accent);text-transform:uppercase;margin-bottom:8px;font-size:11px;font-weight:500}#portfolioTitle{margin-bottom:40px;font-size:2.5rem;font-weight:800}#portfolioContent{grid-template-columns:1fr 1fr;align-items:start;gap:48px;display:grid}#portfolioImageWrapper{flex-direction:column;gap:16px;display:flex}#portfolioImageLink{border-radius:10px;transition:opacity .2s,transform .2s;display:block;overflow:hidden}#portfolioImageLink:hover{opacity:.88;transform:translateY(-2px)}#portfolioContent img{object-fit:cover;border:1px solid var(--accent);cursor:pointer;border-radius:10px;width:100%;display:block;box-shadow:0 4px 16px #0000001f}#portfolioVisitLink{text-decoration:none;display:block}#portfolioVisitBtn{width:100%}#portfolioText{flex-direction:column;gap:14px;display:flex}#portfolioTags{flex-wrap:wrap;gap:8px;margin-bottom:8px;display:flex}.tag{background-color:var(--card-bg);color:var(--accent);border:1px solid var(--accent);border-radius:20px;padding:4px 12px;font-size:.8rem;font-weight:600}.portfolioSection{color:var(--text-primary);margin-top:6px;font-size:1rem;font-weight:700}#portfolioText p{color:var(--text-secondary);font-size:.95rem;line-height:1.7}#portfolioText .portfolioSection{color:var(--text-primary)}@media (width<=750px){#portfolioContent{grid-template-columns:1fr}}#services{background-color:var(--card-bg);padding:80px 5%}#servicesInner{max-width:1100px;margin:0 auto}#services h2{margin-bottom:12px;font-size:2rem;font-weight:800}#servicesSubtitle{color:var(--text-secondary);max-width:560px;margin-bottom:48px;font-size:1rem}#servicesGrid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.serviceBox{background-color:var(--background);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:12px;padding:32px 24px;transition:box-shadow .2s;display:flex}.serviceBox:hover{box-shadow:0 4px 20px #5b4fe81f}.serviceBox--featured{border-color:var(--accent);border-width:2px}.serviceBox h3{margin:0;font-size:1.1rem;font-weight:700}.serviceBox p{color:var(--text-secondary);margin:0;font-size:.95rem;line-height:1.6}.popularBadge{background-color:var(--accent);color:#fff;letter-spacing:.08em;border-radius:20px;width:fit-content;padding:3px 10px;font-size:.7rem;font-weight:700;display:inline-block}@media (width<=750px){#servicesGrid{grid-template-columns:1fr}}body{background-color:var(--background);font-family:var(--font-sans);color:var(--text-primary);margin:0;padding:0;line-height:1.6}h1,h2,h3{color:var(--text-primary)}hr{border:none;border-top:1px solid var(--border);margin:0}#about{padding:80px 5%}#aboutInner{max-width:1100px;margin:0 auto}#about h2{margin-bottom:40px;font-size:2rem;font-weight:800}#aboutContent{grid-template-columns:1fr;align-items:center;gap:60px;max-width:600px;display:grid}#aboutText{flex-direction:column;gap:20px;display:flex}#aboutText p{color:var(--text-secondary);margin:0;font-size:1.05rem;line-height:1.8}#aboutImg{object-fit:cover;border-radius:10px;width:100%;display:block}@media (width<=750px){#aboutContent{grid-template-columns:1fr}#aboutImg{order:-1}}#contact{background-color:var(--card-bg);padding:80px 5%}#contactInner{max-width:600px;margin:0 auto}#contact h2{margin-bottom:8px;font-size:2rem;font-weight:800}#contactSubtitle{color:var(--text-secondary);margin-top:0;margin-bottom:40px}#contactFormEl{flex-direction:column;gap:20px;display:flex}.formGroup{flex-direction:column;gap:6px;display:flex}.formGroup label{color:var(--text-primary);font-size:.9rem;font-weight:600}.formGroup input,.formGroup textarea{border:1.5px solid var(--border);font-size:1rem;font-family:var(--font-sans);color:var(--text-primary);background-color:var(--background);border-radius:6px;outline:none;padding:.65em .9em;transition:border-color .2s}.formGroup input:focus,.formGroup textarea:focus{border-color:var(--accent)}.formGroup textarea{resize:vertical;min-height:130px}#contactFormEl button[type=submit]{background-color:var(--accent);color:#fff;font-size:1rem;font-family:var(--font-sans);cursor:pointer;border:none;border-radius:6px;align-self:flex-start;padding:.8em 2em;font-weight:600;transition:background-color .2s}#contactFormEl button[type=submit]:hover{background-color:var(--muted-accent)}.fieldError{color:#e03131;margin:0;font-size:.82rem}#formError{color:#e03131;margin:0;font-size:.9rem}#contactDirect{color:var(--text-secondary);margin-top:24px;font-size:.95rem}#contactDirect a{color:var(--accent);font-weight:600}
