.evolution-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: flex;
  align-items: center;
  min-height: 720px;
  height: 100svh;
  color: #fff;
  background: #071726;
  --slide-duration: 6500ms;
  --crossfade-duration: 1300ms;
  --ken-burns-duration: 7800ms;
}

.evolution-hero .hero-slides,
.evolution-hero .hero-slide,
.evolution-hero .hero-media,
.evolution-hero .hero-slide img,
.evolution-hero .hero-shade {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.evolution-hero .hero-slide {
  z-index: 0;
  opacity: 0;
  pointer-events: none;
  transition: opacity var(--crossfade-duration) ease-in-out;
}

.evolution-hero .hero-slide.is-active {
  z-index: 2;
  opacity: 1;
  pointer-events: auto;
}

.evolution-hero .hero-slide.is-active.is-leaving,
.evolution-hero .hero-slide.is-leaving {
  z-index: 3;
  opacity: 0;
  pointer-events: none;
}

.evolution-hero .hero-media {
  display: block;
  overflow: hidden;
  pointer-events: none;
}

.evolution-hero .hero-slide img {
  object-fit: cover;
  transform: scale(1.03);
  transform-origin: center;
  will-change: transform;
}

.evolution-hero.is-ready .hero-slide.is-active img {
  animation-duration: var(--ken-burns-duration);
  animation-timing-function: ease-out;
  animation-fill-mode: forwards;
}

.evolution-hero.is-ready .hero-slide.kb-dir-1.is-active img { animation-name: mzKenBurns1; }
.evolution-hero.is-ready .hero-slide.kb-dir-2.is-active img { animation-name: mzKenBurns2; }
.evolution-hero.is-ready .hero-slide.kb-dir-3.is-active img { animation-name: mzKenBurns3; }
.evolution-hero.is-ready .hero-slide.kb-dir-4.is-active img { animation-name: mzKenBurns4; }
.evolution-hero.is-ready .hero-slide.kb-dir-5.is-active img { animation-name: mzKenBurns5; }
.evolution-hero.is-ready .hero-slide.kb-dir-6.is-active img { animation-name: mzKenBurns6; }

@keyframes mzKenBurns1 {
  from { transform: scale(1.03) translate3d(-1.4%, .8%, 0); }
  to   { transform: scale(1.20) translate3d(2.8%, -2.2%, 0); }
}

@keyframes mzKenBurns2 {
  from { transform: scale(1.04) translate3d(1.8%, -.8%, 0); }
  to   { transform: scale(1.19) translate3d(-2.8%, 2.1%, 0); }
}

@keyframes mzKenBurns3 {
  from { transform: scale(1.03) translate3d(0, 1.4%, 0); }
  to   { transform: scale(1.20) translate3d(2.2%, -2.8%, 0); }
}

@keyframes mzKenBurns4 {
  from { transform: scale(1.04) translate3d(-1.8%, -1%, 0); }
  to   { transform: scale(1.19) translate3d(2.9%, 2.2%, 0); }
}

@keyframes mzKenBurns5 {
  from { transform: scale(1.03) translate3d(1.2%, 1.2%, 0); }
  to   { transform: scale(1.20) translate3d(-2.5%, -2.6%, 0); }
}

@keyframes mzKenBurns6 {
  from { transform: scale(1.04) translate3d(0, -1.3%, 0); }
  to   { transform: scale(1.19) translate3d(-2.4%, 2.7%, 0); }
}

.evolution-hero .hero-shade {
  z-index: 3;
  background:
    linear-gradient(90deg, rgba(7, 23, 38, .80), rgba(7, 23, 38, .28), rgba(7, 23, 38, .48)),
    linear-gradient(0deg, rgba(7, 23, 38, .48), transparent 45%);
  pointer-events: none;
}

.evolution-hero .hero-content {
  position: relative;
  z-index: 4;
  pointer-events: auto;
  width: min(1180px, 92%);
  margin: auto;
  padding-top: var(--header-clearance, 84px);
}

.evolution-hero .hero-controls {
  position: absolute;
  z-index: 5;
  right: max(24px, calc((100vw - 1180px) / 2));
  bottom: 52px;
  display: flex;
  align-items: center;
  gap: 18px;
}

.evolution-hero .slide-dots {
  display: flex;
  gap: 9px;
}

.evolution-hero .slide-dots button {
  position: relative;
  display: grid;
  width: 28px;
  height: 28px;
  padding: 0;
  place-items: center;
  border: 0;
  background: transparent;
  cursor: pointer;
}

.evolution-hero .slide-dots button::before {
  width: 20px;
  height: 2px;
  border-radius: 999px;
  background: rgba(255, 255, 255, .45);
  content: "";
  transition: width .3s ease, background-color .3s ease;
}

.evolution-hero .slide-dots button.is-active::before {
  width: 28px;
  background: #fff;
}

.evolution-hero .slide-pause {
  width: 38px;
  height: 38px;
  border: 1px solid rgba(255, 255, 255, .55);
  border-radius: 50%;
  background: rgba(0, 0, 0, .24);
  color: #fff;
  cursor: pointer;
}

.evolution-hero .scroll-cue {
  position: absolute;
  z-index: 5;
  left: 50%;
  bottom: 26px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  min-width: 90px;
  padding: 8px 14px 0;
  color: #fff;
  text-decoration: none;
  text-shadow: 0 2px 12px rgba(0, 0, 0, .72);
  transform: translateX(-50%);
  animation: mzScrollCueFloat 2.2s ease-in-out infinite;
}

.evolution-hero .scroll-cue__label {
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .17em;
  line-height: 1;
  text-transform: uppercase;
}

.evolution-hero .scroll-cue__line {
  position: relative;
  display: block;
  width: 2px;
  height: 54px;
  overflow: hidden;
  background: rgba(255, 255, 255, .44);
  box-shadow: 0 0 12px rgba(0, 0, 0, .38);
}

.evolution-hero .scroll-cue__runner {
  position: absolute;
  top: -18px;
  left: 0;
  width: 100%;
  height: 20px;
  background: #fff;
  box-shadow: 0 0 12px rgba(255, 255, 255, .85);
  animation: mzScrollCueRunner 1.55s cubic-bezier(.45, 0, .2, 1) infinite;
}

.evolution-hero .scroll-cue:focus-visible {
  outline: 3px solid #fff;
  outline-offset: 5px;
}

@keyframes mzScrollCueRunner {
  0% { transform: translateY(0); opacity: 0; }
  18% { opacity: 1; }
  82% { opacity: 1; }
  100% { transform: translateY(72px); opacity: 0; }
}

@keyframes mzScrollCueFloat {
  0%, 100% { transform: translate(-50%, 0); }
  50% { transform: translate(-50%, 5px); }
}

@media (max-width: 850px) {
  .evolution-hero { min-height: 650px; }
  .evolution-hero .hero-controls { right: 20px; bottom: 30px; }
  .evolution-hero .scroll-cue { bottom: 24px; }
}

@media (prefers-reduced-motion: reduce) {
  .evolution-hero .hero-slide,
  .evolution-hero .hero-slide.is-active {
    transition-duration: .35s;
  }

  .evolution-hero .hero-slide img,
  .evolution-hero.is-ready .hero-slide.is-active img {
    animation: none !important;
    transform: scale(1.03) !important;
  }

  .evolution-hero .scroll-cue { animation: none; }
  .evolution-hero .scroll-cue__runner { animation: none; top: 17px; opacity: 1; }
}

:root{--color-brand:#d7483b;--color-brand-surface:#bb372e;--color-brand-surface-hover:#9d2926;--ink:#122b3b;--deep:#0b2536;--navy:#0c2433;--red:#d7483b;--red2:#bb372e;--muted:#5d6b72;--cream:#f6f5f1;--white:#fff;--line:#e0e6e7;--max:1240px;--header:92px;--shadow:0 22px 58px rgba(8,31,47,.14)}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:400 16px/1.78 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased}img,svg{max-width:100%}img{display:block}a{color:inherit}a:not([class]){text-decoration-color:var(--red);text-underline-offset:3px}button,input,textarea{font:inherit}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #e79a3b;outline-offset:3px}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.13;letter-spacing:-.035em}h1{font-size:clamp(3rem,5.4vw,6.5rem);font-weight:730}h2{font-size:clamp(2.2rem,3.7vw,3.7rem);font-weight:720}h3{font-size:1.35rem}p{color:inherit}.container{width:min(var(--max),calc(100% - 72px));margin-inline:auto}.i{display:inline-block;width:20px;height:20px;flex:none;vertical-align:middle}.skip{position:fixed;z-index:9999;top:-70px;left:16px;padding:12px 18px;background:#fff;color:#000}.skip:focus{top:14px}
/* Header: transparent on the homepage, white after scroll, standard on inner pages. */
.site-header{position:fixed;z-index:100;top:0;left:0;right:0;transition:background .3s ease,box-shadow .3s ease;--nav-color:white;--logo-light:1;--logo-dark:0}.header-main{min-height:var(--header);display:flex;align-items:center;justify-content:space-between;gap:22px}.site-header.home-header{background:linear-gradient(180deg,rgba(7,22,34,.69),rgba(7,22,34,.02));color:#fff}.site-header.inner-header,.site-header.is-scrolled,.site-header.is-menu-open{background:#fff;box-shadow:0 2px 25px rgba(0,0,0,.07);color:var(--ink);--nav-color:var(--ink)}.brand{display:flex;align-items:center;width:205px;flex:none;text-decoration:none}.brand img{display:block;width:100%;height:64px;object-fit:contain;transition:filter .3s}.site-header.home-header:not(.is-scrolled):not(.is-menu-open) .brand img{filter:brightness(0) invert(1)}.main-nav{display:flex;align-items:center;gap:clamp(10px,1.1vw,22px);flex:1;justify-content:flex-end}.main-nav a{font-size:12px;font-weight:780;line-height:1.3;letter-spacing:.028em;text-decoration:none;color:inherit;white-space:nowrap;transition:color .2s}.main-nav a:hover,.main-nav a[aria-current=page]{color:var(--red)}.site-header.home-header:not(.is-scrolled):not(.is-menu-open) .main-nav a:hover,.site-header.home-header:not(.is-scrolled):not(.is-menu-open) .main-nav a[aria-current=page]{color:#ffb9a5}.header-cta{padding:12px 15px;background:var(--red);color:#fff!important;text-decoration:none;border-radius:2px;font-weight:750;font-size:12px;white-space:nowrap;display:inline-flex;align-items:center;gap:7px;transition:background .2s}.header-cta:hover{background:#ae342b}.header-cta .i{width:16px;height:16px}.mobile-trigger{display:none;width:48px;height:48px;flex:none;border:1px solid #b5c2c5;border-radius:12px;background:transparent;align-items:center;justify-content:center;flex-direction:column;gap:6px;color:inherit;padding:0}.mobile-trigger span{height:2px;width:22px;display:block;border-radius:2px;background:currentColor;transform-origin:center;transition:transform .2s,opacity .15s}
/* Hero / borrowed MWA slideshow states below */
.evolution-hero{min-height:700px;height:min(900px,100svh)}.evolution-hero .hero-content{width:min(var(--max),calc(100% - 72px));padding-top:105px}.evolution-hero .hero-content h1,.evolution-hero .hero-content h2{max-width:780px;margin:0 0 22px;font-size:clamp(3.3rem,6.15vw,6.7rem);line-height:1.06;font-weight:780;letter-spacing:-.05em;text-wrap:balance}.evolution-hero .hero-content>p:not(.eyebrow){font-size:clamp(1.04rem,1.55vw,1.3rem);max-width:560px;color:#f0f2f3;line-height:1.65;margin-bottom:30px}.evolution-hero .hero-shade{background:linear-gradient(90deg,rgba(4,23,38,.89) 0%,rgba(5,25,38,.61) 55%,rgba(5,20,31,.35)),linear-gradient(0deg,rgba(3,25,36,.36),transparent 50%)}.evolution-hero .hero-controls{bottom:66px}.evolution-hero .scroll-cue{bottom:31px}.evolution-hero .scroll-cue>span:first-child{font-size:.69rem;letter-spacing:.16em;text-transform:uppercase;font-weight:730}.eyebrow{color:var(--red);font-size:.74rem;font-weight:800;line-height:1.6;letter-spacing:.19em;text-transform:uppercase;margin-bottom:24px}.eyebrow.light{color:#ffa990}.btn{display:inline-flex;gap:18px;align-items:center;justify-content:space-between;min-height:55px;padding:13px 22px;font-weight:730;font-size:.89rem;text-decoration:none;border:1px solid transparent;border-radius:2px;transition:background .2s,transform .2s,color .2s;cursor:pointer}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--red);color:#fff;border-color:var(--red)}.btn-primary:hover{background:var(--red2)}.btn-dark{background:var(--deep);color:#fff}.btn-dark:hover{background:#23495a}.btn-light{background:#fff;color:var(--deep)}.btn-light:hover{background:#ffefeb}.btn .i{width:19px}.text-link{display:inline-flex;align-items:center;gap:14px;margin-top:15px;color:var(--deep);font-weight:800;font-size:.91rem;text-decoration:none;border-bottom:2px solid var(--red);padding-bottom:8px}.text-link:hover{color:var(--red)}.light-link{color:#fff}
/* Stats */
.stats{background:var(--red);color:#fff}.stats-inner{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}.stat{padding:28px 30px 28px 24px;border-right:1px solid rgba(255,255,255,.25);display:flex;flex-direction:column;gap:2px}.stat:first-child{padding-left:0}.stat:last-child{border-right:0}.stat strong{font-size:clamp(1.4rem,2.5vw,2.4rem);line-height:1.25;letter-spacing:-.04em;font-weight:800;font-variant-numeric:tabular-nums}.stat span{font-size:.76rem;font-weight:600;line-height:1.6;color:#ffe1dc}
.section{padding:clamp(78px,8vw,135px) 0}.section.pale,.pale{background:var(--cream)}.section.dark-section{background:#102b3a;color:#fff}.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(38px,6.4vw,105px);align-items:center}.split.reverse{grid-template-columns:1.04fr .96fr}.split-text h2{max-width:570px;margin-bottom:28px}.split-text>p:not(.eyebrow),.prose p{font-size:1rem;line-height:1.9;color:#5c6971}.split-text .lead{font-size:1.18rem!important;color:var(--ink)!important;font-weight:510;line-height:1.75}.split-visual{position:relative;min-width:0}.split-visual>img{width:100%;aspect-ratio:4/4.25;object-fit:cover;object-position:center;box-shadow:var(--shadow);background:#d9e0e3}.split-visual.full>img{aspect-ratio:1.15;object-fit:cover}.image-tag{position:absolute;bottom:-30px;left:-28px;min-width:165px;padding:23px 26px;background:var(--red);color:#fff;font-size:1.5rem;letter-spacing:-.02em;line-height:1.2;font-weight:830;box-shadow:0 18px 35px rgba(31,30,30,.15)}.image-tag span{display:block;font-size:.63rem;letter-spacing:.09em;margin-top:5px}.section-top{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:42px}.section-top h2{max-width:710px;margin:0}.section-top p{max-width:315px;margin:0 0 7px;color:#687780;line-height:1.8}.dark-section .section-top p{color:#d8e3e8}.image-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.image-card{background:#1a3443;position:relative;isolation:isolate;display:flex;align-items:end;min-height:370px;overflow:hidden;text-decoration:none;color:#fff;padding:0;cursor:default}.image-card[href]{cursor:pointer}.image-card::before{content:"";position:absolute;inset:0;z-index:-2;background-image:var(--card-image),url('../images/porto-ilustracao.svg');background-size:cover;background-position:center;transition:transform .5s ease}.image-card::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(4,26,39,.97),rgba(4,25,39,.35) 70%,rgba(4,25,39,.22));pointer-events:none}.image-card:hover::before{transform:scale(1.06)}.card-content{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:36px;min-height:210px}.card-kicker{font-size:.66rem;color:#ffbdab;font-weight:850;letter-spacing:.17em;margin-bottom:13px}.card-content strong{display:block;font-size:1.65rem;line-height:1.2;letter-spacing:-.03em;margin-bottom:10px}.card-content>span:not(.card-kicker):not(.card-arrow){font-size:.89rem;line-height:1.65;color:#e5ecec}.card-arrow{display:flex;justify-content:center;align-items:center;position:absolute;right:25px;top:27px;width:38px;height:38px;border:1px solid rgba(255,255,255,.5);border-radius:50%}.check-list{list-style:none;margin:30px 0 35px;padding:0}.check-list li{display:flex;gap:13px;margin:12px 0;font-weight:700;line-height:1.5}.check-list .i{color:var(--red)}.home-gallery{display:grid;grid-template-columns:1.15fr 1fr .72fr;gap:15px;height:360px}.home-gallery a{overflow:hidden;background:#294d60}.home-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.home-gallery a:hover img{transform:scale(1.035)}
/* True image layer parallax on desktop, distinct image from hero */
.final-cta{position:relative;isolation:isolate;overflow:hidden;padding:98px 0;background:#0b2536;color:#fff}.final-cta-image{position:absolute;inset:0;background-size:cover;background-position:center;z-index:-2}.final-cta-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,31,45,.95),rgba(8,31,45,.74));z-index:-1;pointer-events:none}.final-cta-content{text-align:center;position:relative;z-index:1}.final-cta h2{font-size:clamp(2rem,3.8vw,3.75rem);max-width:1100px;margin:0 auto 24px;line-height:1.17}.final-cta p:not(.eyebrow){color:#d4e0e6;max-width:720px;margin:0 auto 32px;line-height:1.75}.final-cta .eyebrow{margin-bottom:21px}@media(min-width:1051px) and (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.final-cta-image{inset:-104px 0 auto;height:calc(100% + 208px);transform:translate3d(0,var(--mwa-parallax-y,0px),0)}.final-cta.is-parallax-visible .final-cta-image{will-change:transform}}
/* Interior heroes */
.page-hero{padding:180px 0 100px;position:relative;isolation:isolate;min-height:480px;background:var(--deep);color:#fff;overflow:hidden}.page-hero-media{position:absolute;inset:0;z-index:-1;background-size:cover;background-position:center}.page-hero-content{position:relative}.page-hero h1{font-size:clamp(2.9rem,5.3vw,5rem);margin:0 0 17px;max-width:930px}.page-hero .eyebrow{margin:0 0 18px}.page-hero .page-lead{font-size:clamp(.96rem,1.35vw,1.11rem);max-width:min(1100px,100%);line-height:1.6;color:#e0e9ea;margin-bottom:0}.breadcrumbs{display:flex;gap:12px;align-items:center;margin-bottom:28px;font-size:.82rem;color:#c3d3d9}.breadcrumbs a{color:#fff;text-decoration:none}.breadcrumbs a:hover{text-decoration:underline}.intro-center{max-width:840px;text-align:center;margin-bottom:55px}.intro-center p:not(.eyebrow){color:#65737a;font-size:1.07rem}.spec-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.spec{padding:32px 25px;border:1px solid var(--line);background:#fff}.spec>span{display:block;color:var(--red);font-size:.67rem;font-weight:820;letter-spacing:.12em}.spec strong{display:block;font-size:clamp(1.7rem,3vw,3rem);letter-spacing:-.04em;margin:16px 0 6px}.spec p{color:#65727a;font-size:.85rem;line-height:1.65;margin:0}.note{font-size:.83rem!important;color:#687780!important;border-left:3px solid var(--red);padding-left:14px;line-height:1.7!important}.level-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.level{background:var(--cream);padding:40px}.level-number{color:var(--red);font-size:.73rem;letter-spacing:.12em;font-weight:800}.level h3{font-size:1.55rem;margin:15px 0 20px}.level ul{margin:0;padding-left:20px;line-height:2.1;color:#50636a}.level strong{color:var(--deep)}.timeline{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;border-top:2px solid #bec8cb;padding-top:26px}.timeline>div{position:relative}.timeline>div::before{content:"";position:absolute;top:-34px;left:0;width:12px;height:12px;background:var(--red);border-radius:50%}.timeline span{display:block;font-size:2.4rem;font-weight:850;letter-spacing:-.06em;color:var(--red);margin-bottom:18px}.timeline h3{margin-bottom:9px}.timeline p{font-size:.94rem;color:#5a6d75}
/* gallery and contact */
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery-item{position:relative;display:block;width:100%;padding:0;border:0;background:#13394a;text-align:left;overflow:hidden;aspect-ratio:1.15;cursor:pointer;color:#fff}.gallery-item:nth-child(7n+1){grid-column:span 2;aspect-ratio:2.35}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.gallery-item:hover img{transform:scale(1.04)}.gallery-item>span{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-between;align-items:center;padding:40px 22px 20px;background:linear-gradient(0deg,rgba(0,15,26,.87),transparent);font-weight:750;font-size:.91rem}.lightbox{border:0;border-radius:0;background:#071b2a;color:#fff;width:min(96vw,1180px);max-width:96vw;max-height:94vh;padding:44px 28px 20px;box-shadow:0 30px 100px rgba(0,0,0,.4)}.lightbox::backdrop{background:rgba(0,9,16,.88)}.lightbox img{display:block;max-width:100%;max-height:66vh;object-fit:contain;margin:auto}.lightbox p{margin:16px 0 6px;text-align:center}.lightbox-close{position:absolute;right:13px;top:6px;background:transparent;border:0;color:#fff;font-size:2rem}.lightbox-nav{display:flex;justify-content:center;gap:16px}.lightbox-nav button{border:1px solid #93a7b2;padding:6px 16px;background:transparent;color:#fff;border-radius:2px}.contact-grid{display:grid;grid-template-columns:.83fr 1.17fr;gap:clamp(30px,6.5vw,95px);align-items:start}.contact-info>p:not(.eyebrow){color:#6a7b83}.contact-method{display:flex;gap:20px;margin-top:32px;padding-top:30px;border-top:1px solid var(--line)}.contact-method>.i{width:25px;height:25px;color:var(--red)}.contact-method strong{font-size:.91rem}.contact-method p{line-height:1.65;margin:6px 0}.contact-method small{display:block;color:#69767e;font-size:.76rem}.phone{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}.contact-form-wrap{background:var(--cream);padding:48px 42px}.contact-form-wrap h3{font-size:1.9rem}.contact-form-wrap>p{font-size:.91rem;color:#65757d}.form-label{font-size:.73rem;font-weight:780;letter-spacing:.13em;color:var(--red);margin-bottom:16px}.contact-form-wrap label{display:block;font-size:.82rem;font-weight:730;margin:0 0 21px}.contact-form-wrap label>span{color:var(--red)}.contact-form-wrap input,.contact-form-wrap textarea{margin-top:8px;background:#fff;color:#172c36;width:100%;border:1px solid #cbd4d5;padding:13px 14px;outline-offset:3px;border-radius:1px}.contact-form-wrap textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:17px}.form-note,.form-privacy,.form-alternative{font-size:.78rem;line-height:1.7;color:#697981}.form-note{margin:15px 0 3px}.form-privacy{margin:8px 0 24px}.form-alternative{margin-top:14px}.prose{max-width:860px}.prose h2{font-size:clamp(1.45rem,2.5vw,2rem);margin-top:44px}.prose h2:first-of-type{margin-top:0}.archive-box{margin-top:45px;padding:30px;background:var(--cream);border-left:4px solid var(--red)}.archive-box a{color:var(--red);font-weight:750}.archive-box .note{margin-top:16px}.map-panel{min-height:480px;position:relative;overflow:hidden;background:#d5e0d6;box-shadow:var(--shadow)}.map-river{position:absolute;inset:-120px -40px;transform:rotate(-22deg);background:linear-gradient(90deg,#669cb5,#b3d6e6,#74abc1);width:40%;left:50%}.map-river span{position:absolute;top:50%;left:35%;font-size:1.1rem;letter-spacing:.2em;font-weight:850;color:#fff;writing-mode:vertical-rl}.map-land{position:absolute;inset:0;background:linear-gradient(120deg,rgba(233,231,204,.9),transparent 42%)}.map-port{position:absolute;left:43%;top:52%;transform:translate(-50%,-50%);background:var(--deep);color:#fff;padding:21px 28px;box-shadow:0 7px 25px rgba(0,0,0,.2);display:flex;flex-direction:column;align-items:center;white-space:nowrap}.map-port .i{color:#ff9f91;margin-bottom:6px}.map-port small{font-size:.66rem;letter-spacing:.1em}.map-coord{position:absolute;bottom:20px;right:20px;font-size:.76rem;background:#fff;padding:7px 15px}.location-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.location-facts>div{border-top:1px solid #b8c4c9;padding-top:25px}.location-facts span{font-size:1.7rem;font-weight:900;color:var(--red)}.location-facts h3{margin:12px 0}.location-facts p{color:#5d6d75}.not-found{text-align:center;padding:190px 20px 130px}.not-found strong{font-size:6rem;line-height:1;color:var(--red)}.not-found h1{font-size:3rem}.not-found p{color:var(--muted)}
/* footer */
.footer{background:#061d2b;color:#e9f0f1}.footer-columns{display:grid;grid-template-columns:1.2fr .78fr 1.27fr 1fr;gap:0;padding-top:85px;padding-bottom:76px}.footer-col{padding:0 26px;border-left:1px solid #2a4450}.footer-col:first-child{border-left:0;padding-left:0}.footer-col:last-child{padding-right:0}.footer-head{font-size:.9rem;font-weight:760;text-transform:uppercase;letter-spacing:.09em;line-height:1.4;margin-bottom:24px;color:#fff}.footer-identity>p{color:#bccbd0;font-size:.88rem;line-height:1.8;margin-top:22px}.footer-identity .footer-head{margin-bottom:19px}.footer-logo-image--monochrome{width:260px;height:auto;max-height:90px;filter:grayscale(1) brightness(0) invert(1)}.footer ul{list-style:none;margin:0;padding:0}.footer li{margin-bottom:12px}.footer a{text-decoration:none;color:#d6e3e5;font-size:.87rem}.footer a:hover{color:#fff;text-decoration:underline}.footer-contact-list li{display:flex;align-items:flex-start;gap:10px;font-size:.84rem;line-height:1.7}.footer-contact-list li>.i{width:17px;height:17px;color:#e97365;margin-top:5px}.footer-contact-list li>span{min-width:0}.footer-contact-list small{display:block;font-size:.69rem;color:#b1c0c8;line-height:1.5;margin:4px 0}.footer a.foot-mail{overflow-wrap:anywhere}.footer a.phone{text-decoration:underline;text-decoration-color:#adc0c7;text-underline-offset:4px}.legal-id{color:#fff;font-size:.85rem;font-weight:750}.complaint-badge{max-width:140px;height:auto;margin-top:15px}.footer-bottom{border-top:1px solid #253d48;padding:18px 0}.copyright{display:flex;gap:4px;align-items:center;justify-content:center;flex-wrap:wrap;font-size:.76rem;color:#c0cdd2}.copyright a{color:#eaf2f3;font-size:.76rem}.partner{margin-left:6px}.cookie-notice{position:fixed;bottom:18px;right:18px;z-index:200;max-width:min(430px,calc(100% - 32px));display:flex;gap:18px;align-items:center;background:#fff;color:var(--ink);border:1px solid #bac6cb;padding:15px;box-shadow:0 7px 35px rgba(0,0,0,.22);border-radius:7px}.cookie-notice[hidden]{display:none}.cookie-notice p{font-size:.78rem;line-height:1.5;margin:0}.cookie-notice a{color:var(--ink);font-weight:760}.cookie-ok{background:var(--deep);color:#fff;border:0;padding:10px;border-radius:2px;white-space:nowrap;font-size:.78rem;font-weight:770}
@media(max-width:1220px){.header-cta{display:none}.brand{width:185px}.main-nav{gap:12px}.main-nav a{font-size:11px}.footer-columns{grid-template-columns:1fr 1fr;row-gap:42px}.footer-col:nth-child(3){border-left:0;padding-left:0}}
@media(max-width:1050px){:root{--header:78px}.container{width:min(var(--max),calc(100% - 44px))}.mobile-trigger{display:flex}.header-cta{display:none}.main-nav{display:none;position:absolute;top:var(--header);left:0;right:0;background:white;color:var(--ink);box-shadow:0 25px 40px rgba(0,0,0,.12);padding:14px 22px 24px;max-height:calc(100dvh - var(--header));overflow:auto;flex-direction:column;align-items:stretch;gap:0}.site-header.is-menu-open .main-nav{display:flex}.main-nav a{font-size:1rem;padding:12px 8px;white-space:normal;border-bottom:1px solid #e9eded}.site-header.is-menu-open .mobile-trigger span:nth-child(1){transform:translateY(8px) rotate(45deg)}.site-header.is-menu-open .mobile-trigger span:nth-child(2){opacity:0}.site-header.is-menu-open .mobile-trigger span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.split{gap:40px}.image-card{min-height:310px}.card-content{padding:25px}.card-content strong{font-size:1.38rem}}
@media(max-width:760px){.section{padding:70px 0}.evolution-hero{height:91svh;min-height:610px}.evolution-hero .hero-content{width:calc(100% - 44px);padding-top:72px}.evolution-hero .hero-content h1,.evolution-hero .hero-content h2{font-size:clamp(2.5rem,10vw,4.3rem);max-width:100%}.evolution-hero .hero-content>p:not(.eyebrow){max-width:430px;font-size:.97rem}.evolution-hero .hero-controls{bottom:21px}.evolution-hero .scroll-cue{display:none}.stats-inner{grid-template-columns:1fr 1fr}.stat{padding:20px 18px!important;border-bottom:1px solid rgba(255,255,255,.25)}.stat:nth-child(2){border-right:0}.stat:nth-child(3),.stat:nth-child(4){border-bottom:0}.split,.split.reverse{grid-template-columns:1fr;gap:35px}.split-visual>img,.split-visual.full>img{aspect-ratio:1.4}.image-tag{left:14px;bottom:-18px;padding:13px 19px;font-size:1.1rem}.split.reverse .split-visual{order:2}.section-top{align-items:start;flex-direction:column;gap:15px}.section-top p{max-width:100%}.image-cards{grid-template-columns:1fr}.image-card{min-height:300px}.card-content{padding:30px}.home-gallery{grid-template-columns:1fr 1fr;height:auto}.home-gallery a{height:210px}.home-gallery a:last-child{display:none}.page-hero{padding:145px 0 70px;min-height:400px}.page-hero .page-lead{max-width:550px}.spec-grid,.timeline,.location-facts{grid-template-columns:1fr 1fr}.level-grid,.contact-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-item:nth-child(7n+1){grid-column:span 1;aspect-ratio:1.15}.contact-form-wrap{padding:35px 26px}.footer-columns{padding-top:60px;padding-bottom:40px}.final-cta{padding:80px 0}.footer-col{padding-right:17px;padding-left:17px}}
@media(max-width:520px){.brand{width:177px}.header-main{gap:7px}.container{width:calc(100% - 34px)}.evolution-hero .hero-content{width:calc(100% - 34px)}.evolution-hero .hero-content h1,.evolution-hero .hero-content h2{font-size:clamp(2.6rem,11vw,3.8rem)}.eyebrow{font-size:.66rem}.stat strong{font-size:1.45rem}.stat span{font-size:.68rem}.section h2{font-size:2rem}.spec-grid,.timeline,.location-facts{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr}.gallery-item:nth-child(7n+1){aspect-ratio:1.15}.gallery-item{aspect-ratio:1.15}.form-row{grid-template-columns:1fr;gap:0}.footer-columns{grid-template-columns:1fr;gap:35px}.footer-col,.footer-col:nth-child(3){border-left:0!important;padding-left:0!important;border-top:1px solid #2a4450;padding-top:24px}.footer-col:first-child{border-top:0;padding-top:0}.footer .footer-head,.footer-identity{text-align:center}.footer-logo-image--monochrome{margin:auto}.footer-identity>p{max-width:290px;margin:20px auto}.footer-col ul{text-align:center}.footer-contact-list li{justify-content:center}.footer-contact-list li span{text-align:left}.cookie-notice{left:16px;right:16px;bottom:16px;max-width:none;display:block;text-align:center}.cookie-ok{margin-top:10px;width:100%}.copyright{text-align:center;line-height:1.8}.page-hero{min-height:360px;padding:125px 0 50px}.page-hero h1{font-size:2.75rem}.home-gallery a{height:155px}.map-panel{min-height:350px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.final-cta-image{transform:none!important;will-change:auto!important}}

.complaint-badge{background:transparent;object-fit:contain}

.logo-identidade-historica{display:flex;flex-direction:column;gap:12px;align-items:flex-start;margin:22px 0}.logo-identidade-historica span{font-size:.69rem;font-weight:800;letter-spacing:.12em;color:#a94739}.logo-identidade-historica img{max-height:135px;width:auto;object-fit:contain;background:#113013}

/* v1.0.1 - Client's original brand and photographic archive. */
.brand{width:228px;gap:9px;align-items:center}
.brand img{width:70px;min-width:70px;height:62px;object-fit:contain;filter:none!important}
.brand-name{display:flex;flex-direction:column;line-height:1.05;letter-spacing:.09em;color:var(--ink);font-size:19px;font-weight:740}
.brand-name strong{font-size:22px;font-weight:900;letter-spacing:.13em}
.site-header.home-header:not(.is-scrolled):not(.is-menu-open) .brand-name{color:#fff}
.footer-logo-image--monochrome{filter:none!important;width:135px;max-width:100%;height:auto;object-fit:contain}
.archive-gallery-head{margin-top:62px}
@media(max-width:1220px){.brand{width:207px}.brand img{width:62px;min-width:62px;height:58px}.brand-name{font-size:17px}.brand-name strong{font-size:20px}}
@media(max-width:520px){.brand{width:210px}.brand img{width:62px;min-width:62px;height:58px}.brand-name{font-size:16px}.brand-name strong{font-size:20px}.archive-gallery-head{margin-top:46px}}
