.hero[data-astro-cid-d2x27mq6]{position:relative;overflow:hidden;min-height:100dvh;display:flex;align-items:center;justify-content:center;width:100%;.circles{position:absolute;top:0;right:0;width:30vw;height:30vw;color:var(--color-logo-firma);opacity:.22;pointer-events:none;z-index:-1;@media(width<=900px){width:60vw;height:60vw;opacity:.15}}.waves{position:absolute;bottom:15vh;left:0;width:40%;height:30%;opacity:.32;pointer-events:none;z-index:-1;svg{width:100%;height:100%;color:var(--color-logo-firma)}}.inner{width:var(--desktop-width);max-width:var(--max-width);margin:0 auto;display:flex;align-items:center;gap:var(--space-2xl);@media(width<=900px){width:var(--mobile-width);flex-direction:column-reverse;gap:var(--space-xl);padding:0;margin:5rem auto}}.content{flex:1 1 auto;display:flex;flex-direction:column;gap:var(--space-lg);@media(width<=900px){gap:var(--space-md)}h1{font-size:clamp(2.5rem,5vw,5rem);font-weight:var(--fw-bold);letter-spacing:var(--ls-tight);line-height:var(--lh-hero);color:var(--color-heading);margin:0;display:flex;flex-direction:column;gap:.5rem;em{font-style:italic;font-weight:300;color:var(--color-logo-firma)}}.description{font-size:1.0625rem;line-height:var(--lh-base);color:var(--color-text-muted);max-width:34rem;margin:0;@media(width<=900px){font-size:1rem}}.ctas{display:flex;align-items:center;gap:var(--space-xl);@media(width<=900px){flex-direction:column;gap:var(--space-lg)}.btn-primary{all:unset;cursor:pointer;padding:.75rem 1.75rem;background-color:var(--color-text);border-radius:var(--radius-pill);font-size:1rem;font-weight:var(--fw-semibold);color:var(--color-paper);text-decoration:none;transition:background-color var(--transition-fast);&:hover{background-color:var(--color-logo-firma)}}.btn-link{font-size:1rem;font-weight:var(--fw-semibold);color:var(--color-text);text-decoration:none;display:flex;align-items:center;gap:.375rem;transition:gap var(--transition-fast);&:hover{gap:.625rem}}}}.image-card{flex:0 0 40%;border-radius:var(--radius-card-lg);overflow:hidden;background-color:var(--color-paper);aspect-ratio:3 / 4;box-shadow:12px 12px 0 var(--color-logo-firma);margin-right:12px;max-height:75dvh;@media(width<=900px){flex:0 0 auto;width:100%;aspect-ratio:1 / 1;box-shadow:8px 8px 0 var(--color-logo-firma);margin-right:8px}img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block}}}.about[data-astro-cid-5tgsm5jb]{min-height:var(--section-height);width:100%;display:flex;align-items:center;background-color:var(--color-background-secondary-lighter);@media(width<=900px){align-items:flex-start}.inner{width:var(--desktop-width);max-width:var(--max-width);margin:0 auto;padding:var(--section-padding-y) 0;display:flex;align-items:center;gap:var(--space-2xl);@media(width<=900px){width:var(--mobile-width);flex-direction:column;padding:var(--section-padding-y) 0;gap:var(--space-xl)}}.photo-col{flex:0 0 42%;@media(width<=900px){width:100%}}.photo-container{display:flex;flex-direction:row;align-items:center;gap:2rem;width:100%;.tall{flex:0 0 55%;height:clamp(450px,60vh,600px)}.small{flex:1 1 auto;display:flex;flex-direction:column;gap:var(--space-md);height:clamp(500px,65vh,650px)}.photo-card{position:relative;border-radius:var(--radius-card-md);overflow:hidden;box-shadow:var(--shadow-card);height:100%;img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top;display:block}}}.content-col{flex:1 1 auto;display:flex;flex-direction:column;width:100%;gap:var(--space-xl);@media(width<=900px){gap:var(--space-lg)}}.section-header{display:flex;flex-direction:column;gap:var(--space-md);.eyebrow{display:flex;align-items:center;gap:var(--space-md);.line{display:block;width:2rem;height:1px;background:var(--color-text-muted)}.label{font-size:.75rem;font-weight:var(--fw-semibold);letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--color-text-muted)}}h2{font-size:clamp(2.5rem,5vw,4.5rem);font-weight:var(--fw-bold);letter-spacing:var(--ls-tight);line-height:var(--lh-tight);color:var(--color-heading);margin:0;@media(width<=900px){font-size:clamp(2rem,9vw,2.75rem)}}}.description{font-size:1.0625rem;line-height:var(--lh-loose);color:var(--color-text-muted);margin:0;max-width:36rem}.stats{display:flex;align-items:center;gap:var(--space-xl);@media(width<=900px){gap:var(--space-lg)}}.stat{display:flex;flex-direction:column;align-items:center;gap:var(--space-xs);.value{font-size:clamp(1.75rem,2.5vw,2.5rem);font-weight:var(--fw-bold);letter-spacing:var(--ls-tight);line-height:1;color:var(--color-heading)}.stat-label{font-size:.8125rem;font-weight:var(--fw-medium);color:var(--color-text-muted)}}.stat-divider{width:1px;height:2.5rem;background:var(--color-text-muted);opacity:.3;flex-shrink:0}.all-btn{display:inline-flex;align-items:center;width:fit-content;gap:.5rem;padding:.75rem 1.5rem;border-radius:var(--radius-pill);border:var(--color-text);background:var(--color-text);color:var(--color-paper);font-size:.9375rem;font-weight:var(--fw-medium);white-space:nowrap;text-decoration:none;transition:background var(--transition-base),border-color var(--transition-base);flex-shrink:0;@media(width<=600px){width:100%}svg{width:1rem;height:1rem}&:hover{background:var(--color-secondary);border-color:var(--color-secondary);color:var(--color-text)}}}.services[data-astro-cid-wbjjzk6p]{position:relative;width:100%;min-height:var(--section-height);display:flex;align-items:center;overflow:hidden;background-color:var(--color-background-secondary-lighter);@media(width<=900px){align-items:flex-start}.circles{position:absolute;top:0;right:0;width:30vw;height:30vw;color:var(--color-secondary-deep);opacity:.22;pointer-events:none;z-index:0;@media(width<=900px){width:60vw;height:60vw;opacity:.15}}.waves{position:absolute;bottom:15vh;left:0;width:40%;height:30%;opacity:.32;pointer-events:none;z-index:0;svg{width:100%;height:100%;color:var(--color-secondary-deep)}}.inner{position:relative;z-index:1;width:var(--desktop-width);max-width:var(--max-width);margin:0 auto;padding:var(--section-padding-y) 0;display:flex;flex-direction:column;gap:var(--space-2xl);@media(width<=900px){width:var(--mobile-width);padding:var(--section-padding-y) 0;gap:var(--space-xl)}}.section-header{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-xl);@media(width<=900px){flex-direction:column;align-items:flex-start;gap:var(--space-lg);h2{font-size:clamp(2rem,9vw,2.75rem)}}.header-left{display:flex;flex-direction:column;gap:var(--space-md);.eyebrow{display:flex;align-items:center;gap:var(--space-md);.line{display:block;width:2rem;height:1px;background:var(--color-text-muted)}.label{font-size:.75rem;font-weight:var(--fw-semibold);letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--color-text-muted)}}h2{font-size:clamp(2.5rem,5vw,4.5rem);font-weight:var(--fw-bold);letter-spacing:var(--ls-tight);line-height:var(--lh-tight);color:var(--color-heading);margin:0;display:flex;flex-direction:column;em{font-style:italic;font-weight:var(--fw-light);color:var(--color-logo-firma)}}}.header-right{.all-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:var(--radius-pill);border:var(--border-dark-md);color:var(--color-text-on-dark);font-size:.9375rem;font-weight:var(--fw-medium);white-space:nowrap;text-decoration:none;background:var(--color-text);transition:background var(--transition-base),border-color var(--transition-base);flex-shrink:0;svg{width:1rem;height:1rem}&:hover{background:var(--color-secondary);border-color:var(--color-secondary);color:var(--color-text)}}}}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-lg);list-style:none;margin:0;padding:0;@media(width<=900px){grid-template-columns:1fr;gap:var(--space-md)}}.card{position:relative;overflow:hidden;border-radius:var(--radius-card-lg);background:var(--color-background);padding:var(--space-2xl) var(--space-xl);display:flex;flex-direction:column;gap:var(--space-md);transition:background var(--transition-base),box-shadow var(--transition-base);@media(width<=900px){padding:var(--space-xl) var(--space-lg)}&:hover{background:var(--color-bg-dark);.num{color:var(--color-text-on-dark-muted)}h3{.pre{color:var(--color-text-on-dark)}}p{color:var(--color-text-on-dark-muted)}.more-btn{gap:.625rem;color:var(--color-paper)}}.blob{opacity:.2}}.blob{position:absolute;top:-1.5rem;right:-1.5rem;width:7.5rem;height:7.5rem;color:var(--color-secondary-deep);opacity:.45;pointer-events:none;transition:opacity var(--transition-base)}.num{font-size:.8125rem;color:var(--color-text-muted);letter-spacing:var(--ls-normal);transition:color var(--transition-base);margin:0}h3{font-size:clamp(2rem,3vw,2.4rem);font-weight:var(--fw-bold);letter-spacing:var(--ls-snug);line-height:var(--lh-tight);margin:0;color:var(--color-logo-firma);transition:color var(--transition-base);display:flex;.pre{color:var(--color-heading);transition:color var(--transition-base)}}p{font-size:.9375rem;line-height:var(--lh-loose);color:var(--color-text-muted);margin:0;flex:1;transition:color var(--transition-base)}.more-btn{font-size:1rem;font-weight:var(--fw-semibold);color:var(--color-text);text-decoration:none;display:flex;align-items:center;gap:.375rem;transition:gap var(--transition-fast)}}.projects[data-astro-cid-kolswlg6]{background:var(--color-bg-dark);width:100%;min-height:var(--section-height);display:flex;align-items:center;@media(width<=900px){align-items:flex-start}.inner{width:var(--desktop-width);max-width:var(--max-width);margin:0 auto;padding:var(--section-padding-y) 0;display:flex;flex-direction:column;gap:var(--space-2xl);@media(width<=900px){width:var(--mobile-width);padding:var(--section-padding-y) 0;gap:var(--space-xl)}}.section-header{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-xl);@media(width<=900px){flex-direction:column;align-items:flex-start;gap:var(--space-lg)}.header-left{display:flex;flex-direction:column;gap:var(--space-md)}.eyebrow{display:flex;align-items:center;gap:var(--space-md);.line{display:block;width:2rem;height:1px;background:var(--color-text-on-dark-muted)}.label{font-size:.75rem;font-weight:var(--fw-semibold);letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--color-text-on-dark-muted)}}h2{font-size:clamp(2.5rem,5vw,4.5rem);font-weight:var(--fw-bold);letter-spacing:var(--ls-tight);line-height:var(--lh-tight);color:var(--color-text-on-dark);margin:0;@media(width<=900px){font-size:clamp(2rem,9vw,2.75rem)}em{font-style:italic;font-weight:var(--fw-light);color:var(--color-logo-firma)}}.all-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:var(--radius-pill);border:var(--border-dark-md);color:var(--color-text-on-dark);font-size:.9375rem;font-weight:var(--fw-medium);white-space:nowrap;text-decoration:none;transition:background var(--transition-base),border-color var(--transition-base);flex-shrink:0;svg{width:1rem;height:1rem}&:hover{background:var(--color-primary);border-color:var(--color-primary)}}}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-md);list-style:none;margin:0;padding:0;@media(width<=900px){grid-template-columns:repeat(2,1fr)}@media(width<=480px){grid-template-columns:1fr}}.card{border-radius:var(--radius-card-lg);overflow:hidden;background:var(--color-bg-darker);.card-link{display:flex;flex-direction:column;height:100%;text-decoration:none;&:focus-visible{outline:var(--border-focus);outline-offset:3px;border-radius:var(--radius-card-lg)}}.card-image{position:relative;aspect-ratio:4 / 3;overflow:hidden;background:var(--color-bg-darker);.blob-wrap{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:var(--space-lg);svg{width:70%;height:auto;transition:transform var(--duration-slow) var(--ease-smooth)}}.card-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}}.card-content{padding:var(--space-lg);display:flex;flex-direction:column;gap:var(--space-sm);@media(width<=900px){padding:var(--space-md)}.meta{font-size:.75rem;font-weight:var(--fw-semibold);letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--color-text-on-dark-muted);margin:0;.dot{opacity:.5}}.card-footer{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-sm);h3{font-size:clamp(1.5rem,2.5vw,2rem);font-weight:var(--fw-bold);letter-spacing:var(--ls-snug);line-height:var(--lh-tight);color:var(--color-text-on-dark);margin:0;transition:color var(--transition-base);@media(width<=900px){font-size:clamp(1.25rem,5vw,1.5rem)}}.arrow-btn{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;flex-shrink:0;border-radius:var(--radius-pill);border:var(--border-dark-md);color:var(--color-text-on-dark);transition:background var(--transition-base),border-color var(--transition-base),transform var(--transition-base);@media(width<=900px){width:2rem;height:2rem}svg{width:1.125rem;height:1.125rem;@media(width<=900px){width:.875rem;height:.875rem}}}}}&:hover{.blob-wrap svg{transform:scale(1.06)}.arrow-btn{background:var(--color-primary);border-color:var(--color-primary);transform:rotate(45deg)}}}}.process[data-astro-cid-nkj3mp4m]{position:relative;min-height:var(--section-height);width:100%;display:flex;align-items:center;background:var(--color-background);overflow:hidden;@media(width<=900px){align-items:flex-start}.silhouette{position:absolute;bottom:-2rem;left:-4rem;width:18rem;height:24rem;color:var(--color-secondary-deep);opacity:.18;pointer-events:none;@media(width<=900px){width:12rem;height:16rem;left:-3rem;bottom:-1rem;opacity:.12}}.inner{position:relative;width:var(--desktop-width);max-width:var(--max-width);margin:0 auto;padding:var(--section-padding-y) 0;display:flex;flex-direction:column;gap:var(--space-2xl);@media(width<=900px){width:var(--mobile-width);padding:var(--section-padding-y) 0;gap:var(--space-xl)}}.header-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2xl);align-items:end;@media(width<=900px){grid-template-columns:1fr;gap:var(--space-lg);align-items:start}}.section-header{display:flex;flex-direction:column;gap:var(--space-md);.eyebrow{display:flex;align-items:center;gap:var(--space-md);.line{display:block;width:2rem;height:1px;background:var(--color-text-muted)}.label{font-size:.75rem;font-weight:var(--fw-semibold);letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--color-text-muted)}}h2{font-size:clamp(2.5rem,5vw,4.5rem);font-weight:var(--fw-bold);letter-spacing:var(--ls-tight);line-height:var(--lh-tight);color:var(--color-heading);margin:0;@media(width<=900px){font-size:clamp(2rem,9vw,2.75rem)}em{font-style:italic;font-weight:var(--fw-light);color:var(--color-logo-firma)}}}.intro{font-size:clamp(.9375rem,1.2vw,1.0625rem);line-height:var(--lh-loose);color:var(--color-text-muted);margin:0;padding-bottom:.5rem}.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--space-md);list-style:none;margin:0;padding:0;@media(width<=1300px){grid-template-columns:repeat(3,1fr)}@media(width<=900px){grid-template-columns:repeat(2,1fr)}@media(width<=600px){grid-template-columns:1fr}}.step-card{background:var(--color-paper);border-radius:var(--radius-card-md);padding:var(--space-xl) var(--space-lg);display:flex;flex-direction:column;gap:var(--space-md);box-shadow:var(--shadow-card);transition:box-shadow var(--transition-base),transform var(--transition-base);&:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.badge{width:2.25rem;height:2.25rem;border-radius:50%;background:var(--color-text-deep);display:flex;align-items:center;justify-content:center;flex-shrink:0;span{font-size:.6875rem;font-weight:var(--fw-semibold);letter-spacing:var(--ls-wide);color:var(--color-paper);font-family:var(--font-mono)}}h3{font-size:1.125rem;font-weight:var(--fw-bold);letter-spacing:var(--ls-snug);color:var(--color-heading);margin:0}p{font-size:.875rem;line-height:var(--lh-loose);color:var(--color-text-muted);margin:0;flex:1}}}
