.approach-step{grid-template-columns:72px minmax(0,1fr);align-items:center;gap:18px;display:grid}.approach-step:not(:last-child) .approach-step__content{border-bottom:1px solid var(--color-border);padding-bottom:20px}.approach-step+.approach-step{padding-top:20px}.approach-step__icon{aspect-ratio:1;width:72px;color:var(--color-primary);background-color:color-mix(in srgb, var(--color-primary) 6%, var(--color-surface));border:1px solid var(--color-primary);border-radius:18px;place-items:center;font-size:2rem;display:grid}.approach-step__content{min-width:0}.approach-step__title{color:var(--color-text);margin:0 0 6px;font-size:1.25rem;line-height:1.2}.approach-step__description{color:var(--color-text-secondary);margin:0;font-size:1rem;line-height:1.5}@media (min-width:48rem){.approach-step{grid-template-columns:1fr;align-content:start;gap:16px;padding-inline:20px}.approach-step:first-child{padding-left:0}.approach-step:last-child{padding-right:0}.approach-step:not(:last-child){border-right:1px solid var(--color-border)}.approach-step:not(:last-child) .approach-step__content{border-bottom:0;padding-bottom:0}.approach-step+.approach-step{padding-top:0}.approach-step__icon{width:64px;font-size:1.75rem}}.contact-cta{background:radial-gradient(circle at 90% 0%, color-mix(in srgb, var(--color-primary) 12%, transparent), transparent 50%),var(--color-surface);border:1px solid var(--color-border);border-radius:24px;margin-top:40px;padding:36px}.contact-cta__icon{aspect-ratio:1;width:72px;color:var(--color-primary);background-color:color-mix(in srgb, var(--color-primary) 6%, var(--color-surface));border:1px solid var(--color-primary);border-radius:18px;place-items:center;font-size:2rem;display:grid}.contact-cta__title{color:var(--color-text);margin:24px 0 12px;font-size:2rem;line-height:1.15}.contact-cta__content{color:var(--color-text-secondary);margin:0;font-size:1.125rem;line-height:1.5}.contact-cta__link{width:100%;color:var(--color-text);background:linear-gradient(var(--color-surface), var(--color-surface)) padding-box,linear-gradient(120deg, var(--color-primary), var(--color-success)) border-box;border:2px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:16px;margin-top:32px;padding:18px 24px;font-size:1.25rem;font-weight:700;line-height:1.2;text-decoration:none;display:flex}.contact-cta__link .contact-cta__link-icon{color:var(--color-primary);font-size:1.5rem}.contact-cta__link:focus-visible{outline:2px solid var(--color-primary);outline-offset:4px}.contact-links{background:radial-gradient(circle at 50% 0%, color-mix(in srgb, var(--color-primary) 8%, transparent), transparent 55%),var(--color-surface);border:1px solid var(--color-border);border-radius:20px;margin-top:28px;padding:28px 24px}.contact-links__title{color:var(--color-text-secondary);text-align:center;margin:0 0 20px;font-size:1.125rem;font-weight:400;line-height:1.4}.contact-links__list{flex-wrap:wrap;justify-content:center;gap:12px;margin:0;padding:0;list-style:none;display:flex}.contact-links__link{aspect-ratio:1;width:64px;color:var(--color-text-secondary);background-color:color-mix(in srgb, var(--color-primary) 5%, var(--color-surface));border:1px solid var(--color-primary);border-radius:50%;place-items:center;font-size:1.75rem;text-decoration:none;display:grid}.contact-links__link:focus-visible{outline:2px solid var(--color-primary);outline-offset:4px}.breadcrumb__list{align-items:center;margin:0;padding:0;list-style:none;display:flex}.breadcrumb__list>.breadcrumb__item{align-items:center;display:flex}.breadcrumb__list>.breadcrumb__item+.breadcrumb__item:before{content:"/";color:var(--color-text-secondary);margin-inline:8px}.breadcrumb__link{color:var(--color-primary);align-items:center;gap:10px;text-decoration:none;display:inline-flex}.breadcrumb__link:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}.breadcrumb__icon{aspect-ratio:1;width:36px;color:var(--color-primary);border:1px solid var(--color-primary);border-radius:50%;place-items:center;display:grid}.breadcrumb__link-text{background-image:linear-gradient(120deg, var(--color-primary), var(--color-success));color:#0000;-webkit-text-fill-color:#0000;-webkit-background-clip:text;background-clip:text}.project-card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;min-width:0;display:flex}.project-card__details-link{color:inherit;border-radius:inherit;flex:1;grid-template-rows:auto minmax(0,1fr) auto;gap:8px;text-decoration:none;display:grid}.project-card__details-link:focus-visible{outline:2px solid var(--color-primary);outline-offset:4px}.project-card__article{flex:1;padding:8px;display:flex}.project-card__image{aspect-ratio:16/5;object-fit:cover;object-position:top;border-radius:8px;width:100%;height:auto;display:block}.project-card__content{grid-template-rows:auto auto minmax(0,1fr);gap:4px;min-width:0;display:grid}.project-card__category{text-transform:uppercase;margin:0;font-size:.75rem;font-weight:600}.project-card__category--primary{color:var(--color-primary)}.project-card__category--success{color:var(--color-success)}.project-card__title{margin:0;font-size:1.125rem;line-height:1.2}.project-card__description{color:var(--color-text-secondary);-webkit-line-clamp:4;line-clamp:4;-webkit-box-orient:vertical;align-self:center;margin:0;font-size:.875rem;line-height:1.5;display:-webkit-box;overflow:hidden}.project-card__category,.project-card__title{white-space:nowrap;text-overflow:ellipsis;min-inline-size:0;overflow:hidden}.project-card__technologies{--badge-height:1.625rem;--badge-gap:8px;gap:var(--badge-gap);max-block-size:var(--badge-height);flex-wrap:wrap;align-content:flex-start;align-items:flex-start;margin:4px 0 0;padding:0;list-style:none;display:flex;overflow:hidden}.project-card__technologies>.skill-card--compact{min-inline-size:0;max-inline-size:100%;block-size:var(--badge-height);flex:none}.project-card__technologies .skill-card__label{white-space:nowrap;text-overflow:ellipsis;min-inline-size:0;overflow:hidden}.section-header__title{color:var(--color-text);margin:24px 0 16px;font-size:2rem}.section-header__title-accent{background-image:linear-gradient(120deg, var(--color-primary), var(--color-success));color:#0000;-webkit-text-fill-color:#0000;-webkit-background-clip:text;background-clip:text}.section-header__content{max-width:42rem;color:var(--color-text-secondary);font-size:1rem;line-height:1.6}.skill-group{background:radial-gradient(circle at 90% 0%, color-mix(in srgb, var(--color-primary) 10%, transparent), transparent 48%),var(--color-surface);border:1px solid var(--color-border);border-radius:20px;min-width:0;padding:24px}.skill-group__header{grid-template-columns:72px minmax(0,1fr);align-items:start;gap:18px;display:grid}.skill-group__icon{aspect-ratio:1;width:72px;color:var(--color-primary);background-color:color-mix(in srgb, var(--color-primary) 6%, var(--color-surface));border:1px solid var(--color-primary);border-radius:18px;place-items:center;font-size:2rem;display:grid}.skill-group__content{min-width:0}.skill-group__title{color:var(--color-text);margin:0 0 8px;font-size:1.5rem;line-height:1.2}.skill-group__description{color:var(--color-text-secondary);margin:0;font-size:1rem;line-height:1.5}.skill-group__technologies{flex-wrap:wrap;gap:12px;margin:24px 0 0;padding:0;list-style:none;display:flex}.skill-group__technology{color:var(--color-text);background-color:color-mix(in srgb, var(--color-primary) 5%, var(--color-surface));border:1px solid var(--color-primary);border-radius:999px;gap:8px;padding:8px 12px;font-size:.95rem;line-height:1}.skill-group__technology .skill-card__icon{width:20px;height:20px;font-size:1.25rem;display:block}.skill-group__technology .skill-card__label{font-size:inherit;font-weight:inherit}.skill-group__technology.skill-card--api-rest .skill-card__icon{color:var(--color-primary)}.skill-group__technology.skill-card--accessibility .skill-card__icon,.skill-group__technology.skill-card--responsive .skill-card__icon,.skill-group__technology.skill-card--performance .skill-card__icon{color:var(--color-secondary)}.skill-group__technology.skill-card--git .skill-card__icon{color:#f05032}@media (min-width:48rem){.skill-group__technology .skill-card__icon{width:24px;height:24px;font-size:1.5rem}}@media (min-width:75rem){.skill-group{flex-direction:column;gap:24px;display:flex}.skill-group__technologies{grid-template-columns:repeat(2,minmax(0,1fr));margin-block:auto;display:grid}.skill-group__technology{border-color:var(--color-border);border-radius:12px;justify-content:flex-start;gap:10px;padding:10px 12px}.skill-group__technology .skill-card__icon{width:28px;height:28px;font-size:1.75rem}}.stat-item{align-items:center;gap:8px;min-width:0;padding:10px 8px;display:flex}.stat-item--primary{--stat-accent:var(--color-primary)}.stat-item--success{--stat-accent:var(--color-success)}.stat-item__icon{aspect-ratio:1;width:44px;color:var(--stat-accent);background-color:color-mix(in srgb, var(--stat-accent) 12%, transparent);border:1px solid color-mix(in srgb, var(--stat-accent) 30%, transparent);border-radius:50%;flex-shrink:0;place-items:center;font-size:1.25rem;display:grid}.stat-item__icon-svg{width:var(--fa-width,1.25em);height:1em}.stat-item__content{min-width:0;padding-right:4px}.stat-item__value{color:var(--stat-accent);font-size:1.125rem;line-height:1.2;display:block}.stat-item__description{color:var(--color-text-secondary);font-size:.75rem;line-height:1.3;display:block}.stat-item__description:after{content:"";background-color:var(--stat-accent);border-radius:2px;width:24px;height:2px;margin-top:4px;display:block}.timeline-item{z-index:1;grid-template-columns:22px minmax(0,1fr);gap:20px;min-width:0;display:grid;position:relative}.timeline-item:before{z-index:1;aspect-ratio:1;content:"";background-color:var(--color-primary);border:3px solid var(--color-background);width:22px;box-shadow:0 0 0 2px var(--color-primary),0 0 16px color-mix(in srgb, var(--color-primary) 70%, transparent);border-radius:50%;margin-top:4px;position:relative}.timeline-item__content{min-width:0}.timeline-item__year{color:var(--color-primary);margin-bottom:4px;font-size:1.35rem;font-weight:700;line-height:1.2;display:block}.timeline-item__description{color:var(--color-text-secondary);margin:0;font-size:1.125rem;line-height:1.45}@media (min-width:48rem){.timeline-item{text-align:center;grid-template-columns:1fr;justify-items:center;gap:16px}.timeline-item:before{margin-top:0}}.user-approach{background:radial-gradient(circle at 90% 0%, color-mix(in srgb, var(--color-primary) 10%, transparent), transparent 48%),var(--color-surface);border:1px solid var(--color-border);border-radius:20px;margin-top:24px;padding:24px}.user-approach__header{grid-template-columns:72px minmax(0,1fr);align-items:start;gap:18px;display:grid}.user-approach__icon{aspect-ratio:1;width:72px;color:var(--color-primary);background-color:color-mix(in srgb, var(--color-primary) 6%, var(--color-surface));border:1px solid var(--color-primary);border-radius:18px;place-items:center;font-size:2.25rem;display:grid}.user-approach__content{min-width:0}.user-approach__title{color:var(--color-text);margin:0 0 8px;font-size:1.5rem;line-height:1.2}.user-approach__description{color:var(--color-text-secondary);margin:0;font-size:1rem;line-height:1.5}.user-approach__values{grid-template-columns:1fr;margin:28px 0 0;padding:0;list-style:none;display:grid}@media (min-width:48rem){.user-approach{padding:32px}.user-approach__values{grid-template-columns:repeat(3,minmax(0,1fr))}}.user-value{grid-template-columns:28px minmax(0,1fr);align-items:start;gap:14px;min-width:0;padding:18px 0;display:grid}.user-value:first-child{padding-top:0}.user-value:last-child{padding-bottom:0}.user-value+.user-value{border-top:1px solid var(--color-border)}.user-value__icon{color:var(--color-primary);margin:3px 0 0;font-size:1.4rem}.user-value__title{color:var(--color-text);margin:0 0 6px;font-size:1.05rem;line-height:1.2}.user-value__description{color:var(--color-text-secondary);margin:0;font-size:.95rem;line-height:1.45}@media (min-width:48rem){.user-value{padding:0 20px}.user-value:first-child{padding-left:0}.user-value:last-child{padding-right:0}.user-value+.user-value{border-top:0;border-left:1px solid var(--color-border)}}.hero,.hero__inner{gap:20px;display:grid}.hero__content{flex-direction:column;align-items:start;gap:8px;display:flex}.hero__greeting{border:solid 1px var(--color-border);border-radius:25px;align-items:center;gap:4px;padding:6px 12px;font-size:1rem;display:inline-flex}.hero__title{font-size:2rem;font-weight:700}.hero__surname{background-image:linear-gradient(120deg, var(--color-primary), var(--color-success));color:#0000;-webkit-text-fill-color:#0000;-webkit-background-clip:text;background-clip:text}.hero__subtitle{font-size:1.125rem}.hero__technologies{flex-wrap:wrap;align-items:center;gap:4px 6px;margin:0;padding:0;font-size:.875rem;list-style:none;display:flex}.hero__technology{align-items:center;gap:6px;display:flex}.hero__technology:first-child{color:var(--color-primary)}.hero__technology:nth-child(2),.hero__technology:nth-child(4){color:var(--color-success)}.hero__technology:not(:last-child):after{content:"•";color:var(--color-text-secondary)}.hero__description{color:var(--color-text-secondary);font-size:1rem;line-height:1.5}.hero__media{width:100%;max-width:24rem;margin-inline:auto}.hero__visual{background:var(--color-background) url(/images/hero-decoration.avif) center/cover no-repeat;border-radius:12px;padding:20px;overflow:hidden}.hero__portrait{border-radius:12px;width:100%;height:auto;display:block}.hero__experience{background-color:color-mix(in srgb, var(--color-surface) 88%, transparent);border:1px solid var(--color-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px;align-items:center;gap:16px;width:calc(100% - 16px);margin:-2.5rem auto 0;padding:16px;display:flex}.hero__experience-icon{aspect-ratio:1;width:56px;color:var(--color-primary);border:1px solid var(--color-border);border-radius:50%;place-items:center;font-size:1.5rem;display:grid}.hero__experience-content{flex-direction:column;gap:4px;min-width:0;display:flex}.hero__experience-duration{color:var(--color-text);font-size:1.5rem;line-height:1.2}.hero__experience-description{color:var(--color-text-secondary);line-height:1.5}.hero__actions{gap:10px;width:100%;margin-top:12px;display:grid}.hero__skills-list{grid-template-columns:repeat(2,1fr);gap:12px;margin:0;padding:0;list-style:none;display:grid}.hero__projects{gap:12px;display:grid}.hero__projects-eyebrow{color:var(--color-primary);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:10px;font-size:.875rem;font-weight:600;display:flex}.hero__projects-title{font-size:1.5rem;line-height:1.2}.hero__projects-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.hero__projects-list>.project-card:nth-child(n+3){display:none}.hero__projects-link{justify-self:center}.hero__stats{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;grid-template-columns:1fr;gap:0;margin:0;padding:6px;list-style:none;display:grid}@media (min-width:23rem){.hero__stats{grid-template-columns:repeat(2,minmax(0,1fr))}.hero__stats>.stat-item:nth-child(odd){border-right:1px solid var(--color-border)}}@media (min-width:48rem){.hero__inner{grid-template-columns:minmax(0,1fr) minmax(17rem,24rem);grid-template-areas:"content media""skills skills";align-items:start;gap:20px 32px}.hero__content{grid-area:content;align-self:start;padding-top:20px}.hero__media{grid-area:media;align-self:start;margin-inline:0}.hero__actions{flex-direction:column;grid-area:1/1;align-self:end;height:fit-content;margin-top:0;display:flex}.hero__skills-list{grid-area:skills;grid-template-columns:repeat(4,minmax(0,1fr))}.hero__projects{width:min(100%,72rem);margin-inline:auto}.hero__projects-list{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}.hero__projects-link{font-size:1.125rem;line-height:1.4}}@media (min-width:75rem){.hero{gap:24px;width:min(100% - 4rem,80rem);margin-inline:auto}.hero__inner{background:linear-gradient(var(--color-border), var(--color-border)) center bottom/100vw 1px no-repeat;grid-template-columns:minmax(0,1fr) minmax(22rem,30rem);grid-template-areas:"content media""actions media""skills skills";align-items:start;gap:24px 5rem;padding-bottom:32px}.hero__content{max-width:34rem;padding-top:40px}.hero__title{font-size:clamp(3rem,4vw,4rem);line-height:1.1}.hero__subtitle{font-size:2rem;font-weight:600}.hero__description{max-width:34rem}.hero__media{justify-self:end;max-width:30rem;position:relative}.hero__experience{width:15rem;margin:0;position:absolute;bottom:-1.5rem;right:-.75rem}.hero__actions{grid-area:actions;grid-template-columns:repeat(2,max-content);justify-content:start;align-self:start;width:auto;margin-top:0;display:grid}.hero__skills-list{grid-template-columns:repeat(8,4.5rem);justify-content:start}.hero__skills-list .skill-card{gap:6px;min-height:4.5rem;padding:8px 4px}.hero__skills-list .skill-card__icon{font-size:1.5rem}.hero__skills-list .skill-card__label{white-space:nowrap;font-size:.6875rem;line-height:1}.hero__stats{grid-template-columns:repeat(4,minmax(0,1fr))}.hero__stats>.stat-item{border-right:1px solid var(--color-border)}.hero__stats>.stat-item:last-child{border-right:0}.hero__projects{grid-template-columns:minmax(0,1fr) auto;gap:4px 24px;width:100%}.hero__projects-eyebrow{grid-column:1}.hero__projects-title{grid-column:1;margin:0}.hero__projects-link{grid-area:1/2/3;place-self:end}.hero__projects-list{grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:12px}.hero__projects-list>.project-card:nth-child(n+3){display:flex}}.projects{padding-top:0}.projects__filters{gap:16px;margin-top:24px;display:grid}.projects__count{color:var(--color-text-secondary);font-size:1rem;line-height:1.5}.projects__filters-list{flex-wrap:wrap;gap:12px;margin:0;padding:0;list-style:none;display:flex}.projects__filters-list>.projects__filter-item{flex:9.5rem}.projects__filter{width:100%;min-height:56px;color:var(--color-text);border:1px solid var(--color-primary);cursor:pointer;background-color:#0000;border-radius:18px;padding:12px 20px;font-size:1rem;font-weight:600}.projects__filter:focus-visible{outline:2px solid var(--color-secondary);outline-offset:3px}.projects__filter--active{color:var(--color-background);background:linear-gradient(90deg, var(--color-primary), var(--color-secondary));border-color:#0000}.projects__list{overflow-anchor:none;gap:16px;margin:24px 0 0;padding:0;list-style:none;display:grid}.projects__more{color:var(--color-text-secondary);text-align:center;border-block:1px solid var(--color-border);justify-items:center;gap:4px;margin:24px -20px 0;padding:16px 20px;font-size:1rem;line-height:1.5;display:grid}.projects__more-dots{align-items:center;gap:4px;display:flex}.projects__more-dots .projects__page-button{cursor:pointer;background-color:#0000;border:0;border-radius:50%;place-items:center;width:44px;height:44px;padding:0;display:grid;position:relative}.projects__more-dots .projects__page-button:before{aspect-ratio:1;content:"";background-color:color-mix(in srgb, var(--color-primary) 35%, var(--color-surface));border-radius:50%;width:12px;transition:background-color .16s,transform .16s}.projects__more-dots .projects__page-button[aria-current=page]:before{background-color:var(--color-secondary);transform:scale(1.15)}@media (hover:hover) and (pointer:fine){.projects__more-dots .projects__page-button:hover:not([aria-current=page]):before{background-color:var(--color-primary)}}.projects__more-dots .projects__page-button:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}@media (min-width:48rem){.projects__filters-list{grid-template-columns:repeat(5,minmax(0,1fr));width:min(100%,48rem);margin-inline:auto;display:grid}.projects__list{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.projects__more{width:fit-content;max-width:100%;color:var(--color-text-secondary);text-align:center;border:1px solid var(--color-border);border-radius:999px;justify-content:center;align-items:center;gap:0;margin:24px auto 0;padding:8px 16px 8px 0;font-size:1rem;line-height:1.5;display:flex}.projects__more-dots{flex:none;gap:0}.projects__more-text{flex:0 auto}}@media (min-width:75rem){.projects{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"header filters""list list""more more";gap:20px 32px;width:min(100%,80rem);margin-inline:auto;display:grid}.projects>.section-header{grid-area:header}.projects .section-header__title{margin:16px 0 8px;font-size:3rem;line-height:1.1}.projects__filters{grid-area:filters;align-self:center;align-items:center;gap:16px;margin:0;display:flex}.projects__count{font-variant-numeric:tabular-nums;white-space:nowrap;flex:0 0 10ch;order:2;inline-size:10ch}.projects__filters-list{flex-wrap:nowrap;order:1;gap:12px;width:auto;margin:0;display:flex}.projects__filters-list>.projects__filter-item{flex:none}.projects__filter{border-radius:12px;min-height:40px;padding:8px 18px;font-size:.875rem}.projects__list{grid-area:list;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:0}.projects__list .project-card{min-height:9.75rem}.projects__list .project-card__details-link{grid-template-rows:minmax(0,1fr) auto;grid-template-columns:minmax(8.5rem,.85fr) minmax(0,1.35fr);gap:12px}.projects__list .project-card__media{align-self:start;min-width:0}.projects__list .project-card__image{height:95px}.projects__list .project-card__description{-webkit-line-clamp:2;line-clamp:2;min-block-size:0}.projects__list .project-card__technologies{grid-column:1/-1;justify-content:flex-start}.projects__more{grid-area:more;margin-top:12px}}.skills{padding-top:0}.skills__groups{gap:24px;margin:40px 0 0;padding:0;list-style:none;display:grid}.skills__signature{color:color-mix(in srgb, var(--color-primary) 65%, var(--color-text-secondary));letter-spacing:.18em;text-align:center;text-transform:uppercase;white-space:nowrap;justify-content:center;align-items:center;gap:18px;margin:48px 0 0;font-size:.875rem;font-weight:600;line-height:1.5;display:flex}.skills__signature:before,.skills__signature:after{content:"";background:linear-gradient(to right, transparent, var(--color-primary), transparent);flex:0 64px;height:1px}@media (min-width:48rem){.skills__groups{grid-template-columns:repeat(2,minmax(0,1fr))}.skills__groups>:last-child:nth-child(odd){grid-column:1/-1}}@media (min-width:75rem){.skills{width:min(100%,80rem);margin-inline:auto}.skills__groups{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:48px}.skills__groups>:last-child:nth-child(odd){grid-column:auto}}.about{padding-top:0}.about__approach{background:radial-gradient(circle at 85% 0%, color-mix(in srgb, var(--color-primary) 12%, transparent), transparent 45%),var(--color-surface);border:1px solid var(--color-border);border-radius:20px;margin-top:40px;padding:24px}.about__approach-title{color:var(--color-text);margin:0 0 24px;font-size:1.75rem;line-height:1.2}.about__approach-list{margin:0;padding:0;list-style:none}.about__journey{margin-top:40px}.about__journey-title{color:var(--color-text);margin:0 0 28px;font-size:1.75rem;line-height:1.2}.about__journey-list{gap:28px;margin:0;padding:0;list-style:none;display:grid;position:relative}.about__journey-list:before{content:"";background:linear-gradient(to bottom, transparent, var(--color-primary) 8%, var(--color-primary) 92%, transparent);width:2px;box-shadow:0 0 12px color-mix(in srgb, var(--color-primary) 65%, transparent);position:absolute;top:12px;bottom:12px;left:10px}.about__signature{justify-content:flex-end;align-items:center;gap:18px;margin-top:48px;display:flex}.about__signature:before{content:"";background:linear-gradient(to right, transparent, var(--color-primary));flex:0 0 56px;height:1px}.about__signature-text{color:color-mix(in srgb, var(--color-primary) 65%, var(--color-text-secondary));letter-spacing:.22em;text-align:left;text-transform:uppercase;gap:3px;margin:0;font-size:.875rem;font-weight:600;line-height:1.5;display:grid}.about__signature-text .about__signature-line{white-space:nowrap}@media (min-width:48rem){.about__approach{padding:32px}.about__approach-list{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.about__journey-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.about__journey-list:before{background:linear-gradient(to right, transparent, var(--color-primary) 10%, var(--color-primary) 90%, transparent);width:auto;height:2px;inset:11px 16.6667% auto}}@media (min-width:75rem){.about{width:min(100%,80rem);margin-inline:auto}.about__approach{margin-top:48px}.about__approach-title{margin-bottom:32px}}.contact{padding-top:0}.contact__signature{color:color-mix(in srgb, var(--color-primary) 65%, var(--color-text-secondary));letter-spacing:.18em;text-align:center;text-transform:uppercase;background:radial-gradient(circle at 50% 6px, var(--color-primary) 0 5px, transparent 6px);margin:48px 0 0;padding-top:30px;font-size:.875rem;font-weight:600;line-height:1.5;position:relative}.contact__signature:before,.contact__signature:after{content:"";width:calc(50% - 28px);height:1px;position:absolute;top:6px}.contact__signature:before{background:linear-gradient(to right, transparent, var(--color-primary));left:0}.contact__signature:after{background:linear-gradient(to left, transparent, var(--color-primary));right:0}@media (min-width:48rem){.contact{grid-template-columns:minmax(0,2fr) minmax(16rem,1fr);grid-template-areas:"header header""cta links""signature signature";align-items:stretch;column-gap:24px;display:grid}.contact>.section-header{grid-area:header}.contact .contact-cta{grid-area:cta;margin-top:40px}.contact .contact-links{grid-area:links;align-content:center;margin-top:40px;display:grid}.contact__signature{grid-area:signature}}@media (min-width:75rem){.contact{grid-template-columns:minmax(0,2fr) minmax(18rem,1fr);column-gap:32px;width:min(100%,80rem);margin-inline:auto}}@media (prefers-reduced-motion:reduce){.projects__more-dots .projects__page-button:before{transition:none}.projects__more-dots .projects__page-button[aria-current=page]:before{transform:none}}
