*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:5rem;background:var(--color-canvas);color:var(--color-text);font-family:var(--font-body)}body{margin:0;min-width:20rem;background:var(--color-canvas);font-size:var(--font-size-body);line-height:var(--line-height-body)}body.menu-open{overflow:hidden}img{display:block;max-width:100%}a{color:inherit}button{font:inherit}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--font-display);letter-spacing:0}h1{font-size:clamp(2.5rem,5vw,4.75rem);line-height:1.02}h2{font-size:clamp(2rem,3.5vw,3.5rem);line-height:1.08}h3{font-size:var(--font-size-h3);line-height:var(--line-height-compact)}p{color:var(--color-text-muted)}:focus-visible{outline:0;box-shadow:var(--shadow-focus)}::selection{background:var(--color-accent);color:var(--color-on-accent)}.skip-link{position:fixed;z-index:100;top:var(--space-2);left:var(--space-2);transform:translateY(-150%);padding:.65rem 1rem;background:var(--color-accent);color:var(--color-on-accent)}.skip-link:focus{transform:none}.site-header{position:sticky;z-index:20;top:0;border-bottom:1px solid color-mix(in srgb,var(--color-line) 70%,transparent);background:color-mix(in srgb,var(--color-canvas) 92%,transparent);backdrop-filter:blur(14px)}.header-inner{display:grid;grid-template-columns:10.5rem 1fr auto;gap:var(--space-8);align-items:center;width:min(100%,var(--container-max));height:4.5rem;margin:auto;padding-inline:var(--gutter)}.brand-link{display:block;width:10rem}.brand-link img{width:100%;height:auto}.site-nav{display:flex;justify-content:flex-end;gap:clamp(.75rem,1.6vw,1.5rem)}.site-nav a{display:flex;min-height:2.75rem;align-items:center;font-weight:600;text-decoration:none}.site-nav a:hover{color:var(--color-accent)}.menu-toggle{display:none}.button{display:inline-flex;min-height:var(--control-height);align-items:center;justify-content:center;width:fit-content;padding:.75rem 1.4rem;border:1px solid transparent;border-radius:var(--radius-control);font-weight:600;line-height:1;text-decoration:none;white-space:nowrap;transition:transform var(--motion-fast) var(--ease-standard),background var(--motion-base) var(--ease-standard),border-color var(--motion-base) var(--ease-standard)}.button:hover{transform:translateY(-1px)}.button:active{transform:translateY(1px)}.button-primary{background:var(--color-accent);color:var(--color-on-accent)}.button-primary:hover{background:var(--color-accent-strong)}.button-secondary{border-color:var(--color-line);background:transparent;color:var(--color-text)}.button-secondary:hover{background:var(--color-surface)}.button-light{background:var(--color-on-brand);color:#2a201b}.button-light:hover{background:#fff}.text-link,.environment a{font-weight:600;text-decoration-color:var(--color-accent);text-underline-offset:.25em}.text-link:hover,.environment a:hover{color:var(--color-accent-strong)}.hero{display:grid;grid-template-columns:minmax(21rem,.82fr) minmax(0,1.18fr);min-height:calc(100dvh - 8rem);max-height:52rem;overflow:hidden;border-bottom:1px solid var(--color-line)}.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(3rem,7vw,7rem) clamp(2rem,5vw,5rem);padding-left:max(var(--gutter),calc((100vw - var(--container-max))/2 + var(--gutter)))}.hero-copy h1{max-width:11ch;margin-bottom:var(--space-6)}.hero-copy p{max-width:34rem;margin-bottom:var(--space-8);font-size:var(--font-size-body-lg)}.hero-actions{display:flex;flex-wrap:wrap;gap:var(--space-3)}.hero-media{position:relative;min-height:36rem;overflow:hidden;background:var(--color-brand)}.hero-media picture,.hero-media>picture img{width:100%;height:100%}.hero-media>picture img{object-fit:cover}.hero-door{position:absolute;inset-block:0;width:50.1%;display:grid;place-items:center;background:var(--color-brand);will-change:transform}.hero-door-left{left:0;border-right:1px solid color-mix(in srgb,var(--color-on-brand) 34%,transparent)}.hero-door-right{right:0;border-left:1px solid color-mix(in srgb,var(--color-on-brand) 34%,transparent)}.hero-door img{width:min(38%,8rem)}.section{width:min(100%,var(--container-max));margin:auto;padding:clamp(5rem,9vw,8rem) var(--gutter)}.section-heading{display:grid;max-width:49rem;gap:var(--space-4);margin-bottom:var(--space-12)}.section-heading h2,.section-heading p{margin-bottom:0}.section-heading p,.products-heading p,.process-heading p,.faq-heading p{max-width:42rem;font-size:var(--font-size-body-lg)}.environment-grid{display:grid;grid-template-columns:1.3fr .7fr;grid-template-rows:auto auto auto;gap:var(--space-8)}.environment{display:grid;align-content:start;gap:var(--space-4)}.environment-large{grid-row:span 2}.environment-wide{grid-column:1/-1;grid-template-columns:1.3fr .7fr;align-items:end}.environment picture{overflow:hidden;border-radius:var(--radius-media);background:var(--color-surface-muted)}.environment img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform 600ms var(--ease-standard)}.environment-large img{aspect-ratio:4/5}.environment-wide img{aspect-ratio:16/8}.environment:hover img{transform:scale(1.015)}.environment h3,.environment p{margin-bottom:var(--space-2)}.environment p{max-width:43rem}.planned{display:grid;grid-template-columns:1.15fr .85fr;align-items:stretch;width:100%;max-width:none;padding:0;background:var(--color-surface-muted)}.planned-media img{width:100%;height:100%;min-height:42rem;object-fit:cover}.planned-copy{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(4rem,8vw,8rem);padding-right:max(var(--gutter),calc((100vw - var(--container-max))/2 + var(--gutter)))}.planned-copy p{max-width:38rem;font-size:var(--font-size-body-lg)}.feature-list{display:grid;gap:0;width:100%;max-width:38rem;margin:var(--space-4) 0 var(--space-8);padding:0;list-style:none}.feature-list li{padding:var(--space-4) 0;border-bottom:1px solid var(--color-line);font-weight:600}.planned-copy small{max-width:32rem;margin-top:var(--space-3);color:var(--color-text-muted)}.products{display:grid;grid-template-columns:1.15fr .85fr;gap:var(--space-8)}.products-heading{grid-column:1/-1;max-width:48rem;margin-bottom:var(--space-4)}.product-visual img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius-media)}.product-visual-main{grid-row:span 2}.product-visual-main img{aspect-ratio:4/5}.product-visual h3{margin:var(--space-4) 0 var(--space-2)}.product-list{align-self:end;padding:var(--space-8);border-left:clamp(.4rem,1vw,.75rem) solid var(--color-brand);background:var(--color-surface)}.product-list p{margin:0;padding:var(--space-3) 0;border-bottom:1px solid var(--color-line)}.product-list a{display:inline-block;margin-top:var(--space-6)}.process{border-top:1px solid var(--color-line)}.process-heading{max-width:50rem;margin-bottom:var(--space-12)}.process-list{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:0 0 var(--space-12);padding:0;list-style:none;counter-reset:process}.process-list li{min-height:18rem;padding:var(--space-6);border-left:1px solid var(--color-line)}.process-list li:last-child{border-right:1px solid var(--color-line)}.process-list span{display:block;margin-bottom:var(--space-12);color:var(--color-brand);font-family:var(--font-display);font-size:var(--font-size-small);font-weight:700}.process-list h3{font-size:1.25rem}.region{display:grid;grid-template-columns:.55fr 1.45fr;min-height:30rem;background:var(--color-brand);color:var(--color-on-brand)}.region-mark{display:grid;place-items:center;border-right:1px solid color-mix(in srgb,var(--color-on-brand) 30%,transparent)}.region-mark img{width:clamp(7rem,16vw,13rem)}.region-copy{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;max-width:58rem;padding:clamp(4rem,8vw,8rem)}.region h2{max-width:14ch}.region p{max-width:42rem;color:var(--color-on-brand);font-size:var(--font-size-body-lg);opacity:.86}.references .section-heading{margin-bottom:var(--space-8)}.reference-strip{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:var(--space-4)}.reference-strip figure{margin:0}.reference-strip img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:var(--radius-media)}.reference-strip figure:first-child img{aspect-ratio:4/3}.reference-strip figcaption{margin-top:var(--space-2);color:var(--color-text-muted);font-size:var(--font-size-small)}.faq{display:grid;grid-template-columns:.7fr 1.3fr;gap:clamp(3rem,8vw,8rem);border-top:1px solid var(--color-line)}.faq-heading{align-self:start;position:sticky;top:7rem}.faq-list details{border-bottom:1px solid var(--color-line)}.faq-list summary{display:flex;min-height:4.5rem;align-items:center;justify-content:space-between;gap:var(--space-4);cursor:pointer;font-family:var(--font-display);font-size:1.15rem;font-weight:600;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary::after{content:"+";font-size:1.5rem;font-weight:400}.faq-list details[open] summary::after{content:"−"}.faq-list details p{max-width:42rem;margin:0 0 var(--space-6)}.final-cta{position:relative;display:grid;min-height:min(44rem,80dvh);place-items:center;overflow:hidden;color:#fff8f0}.final-cta picture,.final-cta picture::after,.final-cta img{position:absolute;inset:0;width:100%;height:100%}.final-cta picture::after{content:"";display:block;background:linear-gradient(90deg,rgb(33 25 20/.82),rgb(33 25 20/.35))}.final-cta img{object-fit:cover}.final-cta-copy{position:relative;z-index:1;width:min(100%,var(--container-max));padding:clamp(4rem,9vw,8rem) var(--gutter)}.final-cta h2{max-width:13ch;font-size:clamp(2.5rem,6vw,5.5rem)}.final-cta p{max-width:36rem;color:#fff8f0;font-size:var(--font-size-body-lg)}.site-footer{display:grid;grid-template-columns:11rem 1fr 1fr;gap:var(--space-12);align-items:start;padding:var(--space-16) max(var(--gutter),calc((100vw - var(--container-max))/2 + var(--gutter)));background:#211914;color:#f3eee6}.footer-brand img{width:10rem}.site-footer p{max-width:25rem;color:#cdbeaf}.site-footer div{display:grid;gap:var(--space-3)}.site-footer a{font-weight:600}.site-footer span{color:#cdbeaf}.mobile-whatsapp{display:none}
@media(max-width:68rem){.header-inner{grid-template-columns:9rem 1fr auto;gap:var(--space-4)}.site-nav{gap:.8rem}.site-nav a{font-size:.9rem}.header-cta{display:none}.process-list{grid-template-columns:repeat(2,1fr)}.process-list li:nth-child(2){border-right:1px solid var(--color-line)}.process-list li:nth-child(n+3){border-top:1px solid var(--color-line)}}
@media(max-width:52rem){.header-inner{grid-template-columns:9rem 1fr auto}.menu-toggle{display:grid;width:2.75rem;height:2.75rem;place-content:center;gap:4px;border:0;background:transparent;color:var(--color-text)}.menu-toggle span{width:1.25rem;height:2px;background:currentColor;transition:transform var(--motion-base),opacity var(--motion-fast)}.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.site-nav{position:fixed;inset:4.5rem 0 auto;display:none;padding:var(--space-6) var(--gutter) var(--space-8);border-bottom:1px solid var(--color-line);background:var(--color-canvas);box-shadow:var(--shadow-raised)}.site-nav.is-open{display:grid}.site-nav a{font-size:1.15rem}.hero{grid-template-columns:1fr;max-height:none;min-height:auto}.hero-copy{min-height:28rem;padding:clamp(3rem,10vw,5rem) var(--gutter)}.hero-media{min-height:54dvh}.environment-grid,.products{grid-template-columns:1fr}.environment-large{grid-row:auto}.environment-wide{grid-column:auto;grid-template-columns:1fr}.environment-large img,.environment-wide img,.environment img{aspect-ratio:4/3}.planned{grid-template-columns:1fr}.planned-media img{min-height:0;aspect-ratio:4/3}.planned-copy{padding:clamp(4rem,10vw,6rem) var(--gutter)}.product-visual-main{grid-row:auto}.product-visual-main img{aspect-ratio:4/3}.region{grid-template-columns:1fr}.region-mark{min-height:13rem;border-right:0;border-bottom:1px solid color-mix(in srgb,var(--color-on-brand) 30%,transparent)}.region-copy{padding:clamp(4rem,10vw,6rem) var(--gutter)}.reference-strip{grid-template-columns:1fr 1fr}.reference-strip figure:first-child{grid-column:1/-1}.reference-strip img{aspect-ratio:4/3}.faq{grid-template-columns:1fr}.faq-heading{position:static}.site-footer{grid-template-columns:1fr}.mobile-whatsapp{position:fixed;z-index:19;right:var(--space-4);bottom:var(--space-4);display:flex;min-height:3rem;align-items:center;padding:.75rem 1rem;border-radius:var(--radius-control);background:var(--color-accent);box-shadow:var(--shadow-raised);color:var(--color-on-accent);font-weight:600;text-decoration:none}}
@media(max-width:35rem){.hero-copy{min-height:24rem}.hero-actions{display:grid}.hero-actions .button{width:100%}.hero-media{min-height:48dvh}.section{padding-block:4.5rem}.environment-grid{gap:var(--space-12)}.process-list{grid-template-columns:1fr}.process-list li,.process-list li:nth-child(2){min-height:auto;border:0;border-top:1px solid var(--color-line);padding:var(--space-6) 0}.process-list li:last-child{border-bottom:1px solid var(--color-line)}.process-list span{margin-bottom:var(--space-6)}.reference-strip{grid-template-columns:1fr}.reference-strip figure:first-child{grid-column:auto}.site-footer{padding-bottom:6rem}}
@media(prefers-reduced-transparency:reduce){.site-header{background:var(--color-canvas);backdrop-filter:none}}
.skip-link{top:-5rem;transform:none}.skip-link:focus{top:var(--space-2)}
.hero{min-height:calc(100dvh - 13rem)}
@media(max-width:52rem){.hero{min-height:auto}.hero-copy{min-height:20rem;padding-block:3.25rem}.hero-media{height:clamp(12rem,24dvh,16rem);min-height:0}.hero-media>picture img{position:absolute;inset:0}}
@media(max-width:35rem){.hero-copy{min-height:22rem}.hero-media{height:clamp(14rem,30dvh,20rem)}}
.button-light{color:var(--color-brand)}.button-light:hover{background:var(--color-surface)}

/* Client review: aligned editorial grids, animated process rail, and footer baseline. */
@media (min-width:52.01rem){
  .environment-grid{
    grid-template-columns:repeat(12,minmax(0,1fr));
    grid-template-rows:none;
    gap:var(--space-16) var(--space-6);
    align-items:start;
  }
  .environment,.environment-large,.environment-wide{
    grid-row:auto;
    grid-template-columns:1fr;
  }
  .environment-grid>:nth-child(1){grid-column:1/8}
  .environment-grid>:nth-child(2){grid-column:8/13}
  .environment-grid>:nth-child(3){grid-column:1/6}
  .environment-grid>:nth-child(4){grid-column:6/13}
  .environment img,.environment-large img,.environment-wide img{aspect-ratio:3/2}

  .products{
    grid-template-columns:repeat(12,minmax(0,1fr));
    grid-template-rows:auto auto auto;
    gap:var(--space-6);
    align-items:start;
  }
  .products-heading{grid-column:1/8;margin-bottom:var(--space-6)}
  .product-visual-main{grid-column:1/8;grid-row:2/4}
  .products>.product-visual:not(.product-visual-main){grid-column:8/13;grid-row:2}
  .product-list{grid-column:8/13;grid-row:3;align-self:start}
  .product-visual-main img{aspect-ratio:4/3}
  .products>.product-visual:not(.product-visual-main) img{aspect-ratio:3/2}
}

.product-list{
  margin:0;
  padding:var(--space-6);
  border-left:var(--space-2) solid var(--color-brand);
  background:var(--color-surface);
}
.product-list h3{margin-bottom:var(--space-3)}
.product-list p{padding:var(--space-2) 0}
.product-list a{margin-top:var(--space-4)}
.environment img,.product-visual img,.reference-strip img{height:auto}

.process{
  width:100%;
  max-width:none;
  padding-inline:max(var(--gutter),calc((100vw - var(--container-max))/2 + var(--gutter)));
  overflow:hidden;
}
.process-heading{max-width:64rem;margin-bottom:var(--space-16)}
.process-heading h2{max-width:16ch;font-size:clamp(2.75rem,5.5vw,5rem)}
.process-heading p{max-width:38rem}
.process-list{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:var(--space-4);
  margin:0 0 var(--space-12);
  padding:0;
  overflow:visible;
}
.process-list li,
.process-list li:nth-child(2),
.process-list li:nth-child(n+3),
.process-list li:last-child{
  min-height:20rem;
  padding:var(--space-8);
  border:1px solid var(--color-line);
  border-radius:var(--radius-media);
  background:var(--color-surface);
}
.process-list span{margin-bottom:var(--space-16);font-size:1rem}
.process-list h3{max-width:14ch;font-size:1.35rem}

.site-footer{
  grid-template-columns:13rem minmax(16rem,1fr) minmax(19rem,1fr);
  gap:clamp(2rem,5vw,5rem);
  align-items:start;
}
.footer-brand{width:12rem;margin-top:-.5rem;align-self:start}
.footer-brand img{width:100%;height:auto}
.site-footer p,.site-footer div{margin:0;padding:0}

@media (max-width:52rem){
  .environment-grid,.products{gap:var(--space-12)}
  .environment,.environment-large,.environment-wide,
  .products-heading,.product-visual-main,.products>.product-visual:not(.product-visual-main),.product-list{
    grid-column:auto;
    grid-row:auto;
  }
  .product-list{align-self:auto}
  .process-heading{margin-bottom:var(--space-8)}
  .process-heading h2{font-size:clamp(2.5rem,10vw,4rem)}
  .site-footer{grid-template-columns:1fr;gap:var(--space-8)}
  .footer-brand{margin-top:0}
}

.reference-strip{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}
.reference-strip figure:first-child{grid-column:auto}
.reference-strip img,.reference-strip figure:first-child img{aspect-ratio:4/3}

@media (max-width:68rem){
  .process-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:35rem){
  .reference-strip{grid-template-columns:1fr}
  .process-list{grid-template-columns:1fr}
  .process-list li,
  .process-list li:nth-child(2),
  .process-list li:nth-child(n+3),
  .process-list li:last-child{
    min-height:16rem;
    padding:var(--space-6);
    border:1px solid var(--color-line);
  }
  .process-list span{margin-bottom:var(--space-8)}
}
