:root{--accent-color: rgb(68, 114, 81);--text-color: #1a1a1a;--subtext-color: oklch(33% .015 145);--background-color: oklch(91% .009 145);--background-alt: oklch(94.5% .007 145);--error-color: #b83232;--color-white: #ffffff;--font-display: "Bricolage Grotesque", system-ui, sans-serif}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}*{margin:0;padding:0;box-sizing:border-box}html{font-family:var(--font-display);font-size:16px}body{background-color:var(--background-color);color:var(--text-color)}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:100vh;padding:10rem 6rem;gap:6rem;align-items:end;background-color:var(--background-color);position:relative}.hero__brand{position:absolute;top:3rem;left:6rem;display:flex;align-items:center;gap:.75rem;text-decoration:none}.hero__logo{height:3rem;width:auto}.hero__brand-name{font-size:.9375rem;font-weight:700;color:var(--text-color);letter-spacing:.02em}.hero__left{display:flex;align-items:flex-end}.hero__title{font-size:clamp(3rem,8vw,7rem);color:var(--text-color);font-weight:700;line-height:.95;letter-spacing:-.02em;text-transform:uppercase}.hero__title .accent{color:var(--accent-color)}.hero__right{display:flex;flex-direction:column;justify-content:flex-end;gap:2rem}.hero__cta{align-self:flex-start}.hero__button{display:inline-block;padding:1rem 2.5rem;background-color:var(--text-color);color:var(--color-white);text-decoration:none;font-size:.95rem;font-weight:500;letter-spacing:.02em;border:2px solid var(--text-color);transition:all .3s ease;text-transform:uppercase}.hero__button:hover{background-color:transparent;color:var(--text-color)}.hero__button:focus-visible{outline:2px solid var(--accent-color);outline-offset:3px}.hero__subtitle{font-size:1.125rem;color:var(--subtext-color);line-height:1.7;font-weight:400;max-width:500px}@media(max-width:1024px){.hero{padding:3rem 4rem;gap:3rem}}@media(max-width:768px){.hero{grid-template-columns:1fr;padding:6rem 2rem 2rem;gap:1.5rem;align-items:end}.hero__brand{top:2rem;left:2rem}.hero__logo{height:2.5rem}.hero__left{align-items:flex-end}.hero__title{font-size:clamp(2.5rem,12vw,4rem)}.hero__right{gap:1.5rem;align-self:start}.hero__subtitle{max-width:100%}}.services{padding:6rem;background-color:var(--background-color)}.services__container{display:grid;grid-template-columns:1fr auto 1fr;gap:4rem;align-items:center;max-width:1400px;margin:0 auto}.services__column{display:flex;flex-direction:column;gap:1.5rem}.services__title{font-size:clamp(1.75rem,3vw,2.5rem);font-weight:700;color:var(--text-color);letter-spacing:-.01em}.services__title .accent{color:var(--accent-color)}.services__text{font-size:1.0625rem;line-height:1.7;color:var(--subtext-color);font-weight:400}.services__separator{width:2px;height:200px;background-color:var(--accent-color);align-self:stretch}@media(max-width:1024px){.services{padding:4rem}.services__container{gap:3rem}}@media(max-width:768px){.services{padding:3rem 2rem}.services__container{grid-template-columns:1fr;gap:3rem}.services__separator{width:60%;height:2px;justify-self:center}}.hero,.pitch,.services,.portfolio,.process{border-bottom:2px solid var(--accent-color)}.pitch{padding:5rem 6rem;background-color:var(--background-color)}.pitch__statement{font-size:clamp(1.75rem,3.5vw,3rem);font-weight:700;line-height:1.2;letter-spacing:-.02em;color:var(--text-color);max-width:900px}.pitch__accent{color:var(--accent-color)}.pitch__details{list-style:none;margin-top:2.5rem;display:flex;flex-direction:column;gap:.75rem;max-width:700px}.pitch__details li{font-size:1.0625rem;line-height:1.6;color:var(--subtext-color);padding-left:1.25rem;position:relative}.pitch__details li:before{content:"/";position:absolute;left:0;color:var(--accent-color);font-weight:700}.process{padding:4rem 6rem;background-color:var(--background-color)}.process__steps{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:3rem;margin-top:2rem;counter-reset:steps}.process__steps li{display:flex;flex-direction:column;gap:.75rem;counter-increment:steps;position:relative;padding-top:3rem}.process__steps li:before{content:"0" counter(steps);position:absolute;top:0;left:0;font-size:clamp(2rem,3vw,2.5rem);font-weight:700;color:var(--accent-color);line-height:1;letter-spacing:-.02em}.process__steps strong{font-size:1.125rem;font-weight:700;color:var(--text-color)}.process__steps span{font-size:1rem;line-height:1.65;color:var(--subtext-color)}@media(max-width:1024px){.process{padding:3rem 4rem}}@media(max-width:768px){.process{padding:3rem 2rem}.process__steps{grid-template-columns:1fr;gap:2rem}}.section__title{font-size:clamp(1.75rem,3vw,2.5rem);font-weight:700;color:var(--text-color);letter-spacing:-.01em;text-transform:lowercase;margin-bottom:2rem}.section__title .accent{color:var(--accent-color)}.portfolio{padding:4rem 6rem;background-color:var(--background-color)}.portfolio__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2rem}.portfolio__item{background-color:var(--accent-color);padding:2rem;display:flex;flex-direction:column;gap:1.25rem;text-decoration:none;color:var(--color-white);transition:opacity .2s ease}.portfolio__item:not(.portfolio__item--demo):hover{opacity:.92}.portfolio__item-tag{font-size:.6875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#ffffffe6}.portfolio__item-media{height:2.5rem;display:flex;align-items:center}.portfolio__item-logo{height:100%;width:auto;object-fit:contain}.portfolio__item-logo--rounded{border-radius:10px}.portfolio__item-demo{font-size:.6875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#ffffffbf;border:1px solid rgba(255,255,255,.5);padding:.25rem .625rem}.portfolio__item-name{font-size:clamp(2rem,3.5vw,3rem);font-weight:700;line-height:1;color:#ffffffe6}.portfolio__item-desc{font-size:.9375rem;line-height:1.55;color:#ffffffe0;margin-top:auto}@media(max-width:1024px){.pitch{padding:4rem}.portfolio{padding:3rem 4rem}.portfolio__grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.pitch{padding:3rem 2rem}.portfolio{padding:2rem}.portfolio__grid{grid-template-columns:1fr}}.contact{padding:6rem;background-color:var(--background-alt)}.contact__container{max-width:800px;margin:0 auto;display:flex;flex-direction:column;gap:2rem;text-align:center}.contact__title{font-size:clamp(1.75rem,3vw,2.5rem);font-weight:700;color:var(--text-color);letter-spacing:-.02em;text-transform:lowercase}.contact__title .accent{color:var(--accent-color)}.contact__text{font-size:1.125rem;line-height:1.7;color:var(--subtext-color);font-weight:400}.contact__info{display:flex;flex-direction:column;gap:1rem;margin-top:1rem}.contact__link{font-size:1.25rem;font-weight:600;color:var(--text-color);text-decoration:none;transition:color .3s ease}.contact__link:hover{color:var(--accent-color)}@media(max-width:1024px){.contact{padding:4rem}}@media(max-width:768px){.contact{padding:3rem 2rem}.contact__title{font-size:clamp(2rem,8vw,3rem)}.contact__link{font-size:1.125rem}}.contact__channels{display:flex;align-items:center;justify-content:center;gap:1.25rem;flex-wrap:wrap}.contact__channel{font-size:1.0625rem;font-weight:600;color:var(--text-color);text-decoration:none;letter-spacing:.01em;transition:color .2s ease}.contact__channel:hover{color:var(--accent-color)}.contact__channel-sep{color:var(--subtext-color);font-weight:400}@media(prefers-reduced-motion:reduce){.skills__word,.skills__logo{animation:none}.hero__button,.floating-contact-btn{transition:none}}.skip-link[data-astro-cid-sckkx6r4]{position:absolute;top:-100%;left:1rem;padding:.75rem 1.25rem;background-color:var(--text-color);color:var(--color-white);font-family:var(--font-display);font-size:.875rem;font-weight:600;text-decoration:none;z-index:9999;transition:top .1s}.skip-link[data-astro-cid-sckkx6r4]:focus{top:1rem}
