.cvqs,.cvqs *{box-sizing:border-box}.cvqs{--cvqs-bg:#f6f5f3;--cvqs-ink:#292929;--cvqs-accent:#8f6236;--cvqs-title:76px;--cvqs-body:18px;background:var(--cvqs-bg);color:var(--cvqs-ink);font-family:Arial,Helvetica,sans-serif}.cvqs p{margin:0 0 1.15em}.cvqs h1,.cvqs h2,.cvqs h3{color:inherit;margin:0;line-height:1.08;font-family:inherit}.cvqs h2{font-size:clamp(29px,3.4vw,49px);letter-spacing:-.045em}.cvqs h3{font-size:23px}.cvqs-copy,.cvqs-lead{font-size:var(--cvqs-body);line-height:1.65}.cvqs-hero{min-height:600px;display:grid;grid-template-columns:1fr 1fr}.cvqs-hero-content{padding:clamp(44px,7vw,130px);display:flex;flex-direction:column;justify-content:center;gap:22px}.cvqs-hero-content p{margin:0}.cvqs-kicker,.cvqs-number{font-size:12px!important;letter-spacing:.16em;text-transform:uppercase;font-weight:700}.cvqs-kicker:before,.cvqs-number:before{content:'';display:inline-block;width:34px;border-top:1px solid var(--cvqs-accent);vertical-align:middle;margin-right:14px}.cvqs h1{font-size:clamp(42px,5vw,var(--cvqs-title));letter-spacing:-.055em;max-width:13ch}.cvqs-lead{max-width:580px}.cvqs-hero-media{min-height:var(--cvqs-image-height);height:100%;overflow:hidden;position:relative;background:#bbb1a7}.cvqs-image{width:100%;height:100%;object-fit:cover;object-position:center var(--cvqs-position);transform:scale(var(--cvqs-zoom));display:block}.cvqs-hero-reverse .cvqs-hero-media{order:-1}.cvqs-art{width:100%;height:100%;position:absolute;inset:0;background:linear-gradient(135deg,#d7d0c8 0%,#a89f94 51%,#716a63 100%);overflow:hidden}.cvqs-art>div:first-child{width:65%;height:125%;background:linear-gradient(110deg,#e9e3dc,#aca49b);position:absolute;left:37%;top:-24%;transform:rotate(21deg);box-shadow:-16px 0 35px #34302b31}.cvqs-art>div:last-child{width:54%;height:84%;background:linear-gradient(120deg,#82776c,#c8bcb0);position:absolute;left:60%;top:29%;transform:rotate(-18deg)}.cvqs-contained{max-width:1240px;margin:0 auto;padding-left:32px;padding-right:32px}.cvqs-about,.cvqs-end{padding-top:104px;padding-bottom:76px;display:grid;grid-template-columns:28% 1fr;gap:45px}.cvqs-about .cvqs-copy,.cvqs-end .cvqs-copy{max-width:800px;margin-top:24px}.cvqs-pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;padding-bottom:105px}.cvqs-pillar{border-top:1px solid #99948e;padding:28px 18px 40px 0}.cvqs-pillar-num{font-size:13px;color:var(--cvqs-accent);display:block;margin-bottom:45px}.cvqs-pillar h3{margin-bottom:18px}.cvqs-pillar .cvqs-copy{font-size:calc(var(--cvqs-body) - 1px)}.cvqs-journey{background:#e6e2dd;padding:95px 0}.cvqs-journey h2{margin:35px 0 20px}.cvqs-journey .cvqs-copy{max-width:690px}.cvqs-journey-steps{display:grid;grid-template-columns:repeat(6,1fr);margin-top:55px}.cvqs-journey-steps span{font-size:11px;letter-spacing:.06em;font-weight:700;min-height:90px;display:flex;align-items:center;justify-content:center;text-align:center;padding:8px;color:#222;border:1px solid #aaa39b;background:#d5cec6;margin-right:-1px}.cvqs-journey-steps span:nth-child(even){background:#c4bcb4}.cvqs-end{padding-bottom:120px}@media(max-width:860px){.cvqs-hero{grid-template-columns:1fr}.cvqs-hero-media{height:360px;min-height:360px}.cvqs-hero-content{padding:65px 26px}.cvqs-hero-reverse .cvqs-hero-media{order:0}.cvqs-contained{padding-left:24px;padding-right:24px}.cvqs-about,.cvqs-end{grid-template-columns:1fr;gap:16px;padding-top:65px}.cvqs-pillars{grid-template-columns:1fr;gap:0;padding-bottom:70px}.cvqs-pillar-num{margin-bottom:18px}.cvqs-journey{padding:70px 0}.cvqs-journey-steps{grid-template-columns:repeat(2,1fr)}}
/* Oculta o título automático da página apenas quando a página contém o módulo Quem Somos. */
body.page .cv-content:has(.cvqs) > h1:first-child{display:none}
body.page .cv-content:has(.cvqs){max-width:none;padding:0;margin:0}

/* Controlos independentes de cada área. */
.cvqs .cvqs-section{background:var(--qs-sbg);color:var(--qs-sink);padding-top:var(--qs-top);padding-bottom:var(--qs-bottom)}
.cvqs .cvqs-section h1,.cvqs .cvqs-section h2,.cvqs .cvqs-section h3{font-size:var(--qs-h)}
.cvqs .cvqs-section .cvqs-copy,.cvqs .cvqs-section .cvqs-lead{font-size:var(--qs-t)}
.cvqs .cvqs-shift{position:relative;left:var(--qs-x);top:var(--qs-y)}
.cvqs .cvqs-section-layout{display:flex;gap:clamp(20px,4vw,70px);align-items:center;width:100%}
.cvqs .cvqs-section-copy{flex:1;min-width:0}
.cvqs .cvqs-section-photo{flex:1;min-width:0;min-height:340px;aspect-ratio:4/3;overflow:hidden;background:#e8e4df}
.cvqs .cvqs-section-img{display:block;width:100%;height:100%;object-fit:cover;object-position:var(--qs-imgx) var(--qs-imgy);transform:scale(var(--qs-imgzoom))}
.cvqs .cvqs-photo-left{flex-direction:row-reverse}
.cvqs .cvqs-hero>.cvqs-section-photo{height:100%;aspect-ratio:auto}
.cvqs .cvqs-hero-reverse>.cvqs-section-photo{order:-1}
.cvqs .cvqs-hero .cvqs-section-photo{min-height:450px}
.cvqs .cvqs-section .cvqs-section-copy h2{margin-bottom:24px}
.cvqs .cvqs-section.cvqs-about,.cvqs .cvqs-section.cvqs-end{display:block}
.cvqs .cvqs-section.cvqs-pillars{display:block}
.cvqs .cvqs-three-pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.cvqs .cvqs-three-pillars .cvqs-pillar{min-width:0}
.cvqs .cvqs-section .cvqs-journey-steps{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:860px){.cvqs .cvqs-section-layout,.cvqs .cvqs-photo-left{flex-direction:column}.cvqs .cvqs-section-photo{width:100%;min-height:250px}.cvqs .cvqs-three-pillars{grid-template-columns:1fr}.cvqs .cvqs-shift{left:0;top:0}.cvqs .cvqs-hero>.cvqs-section-photo{order:0;width:100%}}

/* v1.2.0 — disposição controlável em cada secção */
.cvqs .cvqs-section-layout.cvqs-layout-right{flex-direction:row}
.cvqs .cvqs-section-layout.cvqs-layout-left{flex-direction:row-reverse}
.cvqs .cvqs-section-layout.cvqs-layout-top,.cvqs .cvqs-section-layout.cvqs-layout-bottom{flex-direction:column;align-items:stretch}
.cvqs .cvqs-section-layout.cvqs-layout-top>.cvqs-section-photo{order:-1}
.cvqs .cvqs-section-layout.cvqs-layout-bottom>.cvqs-section-photo{order:2}
.cvqs .cvqs-section-layout.cvqs-layout-top>.cvqs-section-photo,.cvqs .cvqs-section-layout.cvqs-layout-bottom>.cvqs-section-photo{width:100%;max-height:640px;min-height:300px;flex:none}
.cvqs .cvqs-section-layout.cvqs-layout-background{display:block;position:relative;isolation:isolate;min-height:420px}
.cvqs .cvqs-section-layout.cvqs-layout-background>.cvqs-section-photo{position:absolute;inset:0;width:100%;height:100%;min-height:0;aspect-ratio:auto;z-index:-1}
.cvqs .cvqs-section-layout.cvqs-layout-background>.cvqs-section-copy{position:relative;z-index:1;max-width:860px;padding:clamp(35px,5vw,90px);background:rgba(246,245,243,.82)}
.cvqs .cvqs-hero.cvqs-layout-left{grid-template-columns:1fr 1fr}
.cvqs .cvqs-hero.cvqs-layout-left>.cvqs-section-photo,.cvqs .cvqs-hero.cvqs-layout-left>.cvqs-hero-media{order:-1}
.cvqs .cvqs-hero.cvqs-layout-right>.cvqs-section-photo,.cvqs .cvqs-hero.cvqs-layout-right>.cvqs-hero-media{order:2}
.cvqs .cvqs-hero.cvqs-layout-top,.cvqs .cvqs-hero.cvqs-layout-bottom{display:flex;flex-direction:column}
.cvqs .cvqs-hero.cvqs-layout-top>.cvqs-section-photo,.cvqs .cvqs-hero.cvqs-layout-top>.cvqs-hero-media{order:-1;width:100%;height:460px;min-height:460px}
.cvqs .cvqs-hero.cvqs-layout-bottom>.cvqs-section-photo,.cvqs .cvqs-hero.cvqs-layout-bottom>.cvqs-hero-media{order:2;width:100%;height:460px;min-height:460px}
.cvqs .cvqs-hero.cvqs-layout-background{display:block;min-height:580px;position:relative;isolation:isolate}
.cvqs .cvqs-hero.cvqs-layout-background>.cvqs-section-photo,.cvqs .cvqs-hero.cvqs-layout-background>.cvqs-hero-media{position:absolute;inset:0;width:100%;height:100%;min-height:100%;z-index:-1}
.cvqs .cvqs-hero.cvqs-layout-background>.cvqs-hero-content{position:relative;max-width:780px;min-height:580px;background:linear-gradient(90deg,rgba(246,245,243,.94),rgba(246,245,243,.69))}
.cvqs .cvqs-hero.cvqs-no-photo{display:block;min-height:0}
.cvqs .cvqs-hero.cvqs-no-photo>.cvqs-hero-content{max-width:100%;min-height:300px}
@media(max-width:860px){.cvqs .cvqs-section-layout.cvqs-layout-left,.cvqs .cvqs-section-layout.cvqs-layout-right{flex-direction:column}.cvqs .cvqs-hero.cvqs-layout-left,.cvqs .cvqs-hero.cvqs-layout-right{display:flex;flex-direction:column}.cvqs .cvqs-hero.cvqs-layout-left>.cvqs-section-photo,.cvqs .cvqs-hero.cvqs-layout-left>.cvqs-hero-media{order:2}.cvqs .cvqs-section-layout.cvqs-layout-background>.cvqs-section-copy{padding:28px;background:rgba(246,245,243,.84)}}

/* v1.2.4: overlay graduado editável, apenas para "Fotografia por trás". */
.cvqs .cvqs-layout-background.cvqs-has-gradient>.cvqs-section-photo::after,
.cvqs .cvqs-layout-background.cvqs-has-gradient>.cvqs-hero-media::after{
 content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:var(--qs-gradient);
}
.cvqs .cvqs-layout-background.cvqs-has-gradient>.cvqs-section-copy,
.cvqs .cvqs-hero.cvqs-layout-background.cvqs-has-gradient>.cvqs-hero-content{
 background:transparent!important;
}
.cvqs .cvqs-layout-background.cvqs-has-gradient>.cvqs-section-photo,
.cvqs .cvqs-layout-background.cvqs-has-gradient>.cvqs-hero-media{isolation:isolate}
@media(max-width:860px){
 .cvqs .cvqs-layout-background.cvqs-has-gradient>.cvqs-section-copy,
 .cvqs .cvqs-hero.cvqs-layout-background.cvqs-has-gradient>.cvqs-hero-content{background:transparent!important}
}


/* v1.2.6 — módulos do percurso com opção de puzzle encaixado */
.cvqs .cvqs-journey-steps .cvqs-step-piece{font-size:11px;letter-spacing:.06em;font-weight:700;min-height:90px;display:flex;align-items:center;justify-content:center;text-align:center;padding:8px;color:#222;border:1px solid #aaa39b;background:#d5cec6;margin-right:-1px}
.cvqs .cvqs-journey-steps .cvqs-step-piece:nth-child(even){background:#c4bcb4}
.cvqs .cvqs-journey-steps--puzzle{display:flex;flex-wrap:wrap;gap:24px 22px;align-items:stretch}
.cvqs .cvqs-journey-steps--puzzle .cvqs-step-piece{position:relative;flex:1 1 210px;min-height:150px;margin-right:0;padding:0 34px;border:1px solid #b0a79e;background:#d9d1c9;overflow:visible;isolation:isolate}
.cvqs .cvqs-journey-steps--puzzle .cvqs-step-piece span{display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:16px;text-transform:uppercase}
.cvqs .cvqs-journey-steps--puzzle .cvqs-step-piece:nth-child(even){background:#c9c0b6}
.cvqs .cvqs-journey-steps--puzzle .cvqs-step-piece::before{content:'';position:absolute;left:-20px;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:50%;background:var(--qs-sbg,#f6f5f3);box-shadow:0 0 0 1px #b0a79e;z-index:2}
.cvqs .cvqs-journey-steps--puzzle .cvqs-step-piece::after{content:'';position:absolute;right:-22px;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;background:inherit;box-shadow:0 0 0 1px #b0a79e;z-index:1}
.cvqs .cvqs-journey-steps--puzzle .cvqs-step-piece:first-child::before{display:none}
.cvqs .cvqs-journey-steps--puzzle .cvqs-step-piece:last-child::after{display:none}
.cvqs .cvqs-journey-steps--puzzle .cvqs-step-piece:nth-child(3n+1){margin-left:0}
@media(max-width:860px){
 .cvqs .cvqs-journey-steps--puzzle{gap:18px}
 .cvqs .cvqs-journey-steps--puzzle .cvqs-step-piece{flex:1 1 calc(50% - 18px);min-height:120px;padding:0 28px}
}
@media(max-width:620px){
 .cvqs .cvqs-journey-steps--puzzle .cvqs-step-piece{flex:1 1 100%}
}



/* 1.3.0 — formas SVG com curvas geométricas macho/fêmea idênticas. */
.cvqs .cvqs-three-pillars--standard{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.cvqs .cvqs-three-pillars--puzzle{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:0!important;align-items:stretch;width:100%;isolation:isolate;overflow:visible!important}
.cvqs .cvqs-three-pillars--puzzle .cvqs-pillar{position:relative;display:block;min-width:0;min-height:340px;padding:0!important;margin:0!important;border:0!important;overflow:visible!important;background:transparent!important;isolation:auto}
.cvqs .cvqs-three-pillars--puzzle .cvqs-pillar::before,.cvqs .cvqs-three-pillars--puzzle .cvqs-pillar::after{content:none!important;display:none!important}
.cvqs .cvqs-three-pillars--puzzle .cvqs-pillar:nth-child(1){--cvqs-piece-fill:#d8d1c9;z-index:1}
.cvqs .cvqs-three-pillars--puzzle .cvqs-pillar:nth-child(2){--cvqs-piece-fill:#cbc3bb;z-index:2}
.cvqs .cvqs-three-pillars--puzzle .cvqs-pillar:nth-child(3){--cvqs-piece-fill:#b8b0a8;z-index:3}
.cvqs .cvqs-three-pillars--puzzle .cvqs-puzzle-shape{position:absolute;left:0;top:0;width:calc(100% * 1.225);height:100%;overflow:visible;pointer-events:none}
.cvqs .cvqs-three-pillars--puzzle .cvqs-puzzle-shape path{fill:var(--cvqs-piece-fill);stroke:#a69e95;stroke-width:1.5;vector-effect:non-scaling-stroke}
.cvqs .cvqs-three-pillars--puzzle .cvqs-pillar-inner{position:relative;z-index:4;padding:24px 36px 32px 28px;max-width:100%;height:100%}
.cvqs .cvqs-three-pillars--puzzle .cvqs-pillar:not(:first-child) .cvqs-pillar-inner{padding-left:40px}
.cvqs .cvqs-three-pillars--puzzle .cvqs-pillar-num{display:block;margin:0 0 24px;color:var(--cvqs-accent,#8f6236);font-size:12px;line-height:1}
.cvqs .cvqs-three-pillars--puzzle .cvqs-pillar h3{font-size:clamp(23px,2.5vw,36px);line-height:1.05;letter-spacing:-.035em;margin:0 0 16px}
.cvqs .cvqs-three-pillars--puzzle .cvqs-pillar .cvqs-copy{font-size:clamp(14px,1.22vw,17px);line-height:1.55}
@media(max-width:860px){
 .cvqs .cvqs-three-pillars--puzzle{grid-template-columns:1fr;gap:12px!important}
 .cvqs .cvqs-three-pillars--puzzle .cvqs-pillar{min-height:180px}
 .cvqs .cvqs-three-pillars--puzzle .cvqs-puzzle-shape{display:none}
 .cvqs .cvqs-three-pillars--puzzle .cvqs-pillar{background:var(--cvqs-piece-fill)!important}
 .cvqs .cvqs-three-pillars--puzzle .cvqs-pillar-inner,.cvqs .cvqs-three-pillars--puzzle .cvqs-pillar:not(:first-child) .cvqs-pillar-inner{padding:24px!important}
}

/* v1.3.4: recorte original proporcionalmente reduzido e deslocação da caixa INTEIRA */
.cvqs .cvqs-three-pillars--puzzle .cvqs-puzzle-shape{width:calc(100% * var(--cvqs-tab-ratio, 1.10125))!important}
.cvqs .cvqs-three-pillars--puzzle .cvqs-pillar-inner{width:auto!important;max-width:100%!important;transform:translate(var(--cvqs-px,0px),var(--cvqs-py,0px))!important;padding:24px 48px 32px 28px!important;box-sizing:border-box}
.cvqs .cvqs-three-pillars--puzzle .cvqs-pillar:not(:first-child) .cvqs-pillar-inner{padding-left:42px!important}
@media(max-width:860px){.cvqs .cvqs-three-pillars--puzzle .cvqs-pillar-inner,.cvqs .cvqs-three-pillars--puzzle .cvqs-pillar:not(:first-child) .cvqs-pillar-inner{padding:24px!important;transform:translate(var(--cvqs-px,0px),var(--cvqs-py,0px))!important}}

/* v1.3.5: textos à largura da área e fotografia final de altura regulável */
.cvqs .cvqs-section-about .cvqs-section-copy,
.cvqs .cvqs-section-end .cvqs-section-copy{width:100%;max-width:none;min-width:0}
.cvqs .cvqs-section-about .cvqs-copy,
.cvqs .cvqs-section-end .cvqs-copy{max-width:none;width:100%;margin-left:0;margin-right:0}
.cvqs .cvqs-section-end .cvqs-section-layout.cvqs-layout-top > .cvqs-section-photo,
.cvqs .cvqs-section-end .cvqs-section-layout.cvqs-layout-bottom > .cvqs-section-photo,
.cvqs .cvqs-section-end .cvqs-section-layout.cvqs-layout-left > .cvqs-section-photo,
.cvqs .cvqs-section-end .cvqs-section-layout.cvqs-layout-right > .cvqs-section-photo{height:var(--qs-end-height,300px);min-height:0;max-height:none;aspect-ratio:auto;flex:0 0 auto}
.cvqs .cvqs-section-end .cvqs-section-layout.cvqs-layout-top > .cvqs-section-photo,
.cvqs .cvqs-section-end .cvqs-section-layout.cvqs-layout-bottom > .cvqs-section-photo{width:100%}
.cvqs .cvqs-section-end .cvqs-section-photo .cvqs-section-img{width:100%;height:100%;object-fit:cover}
@media(max-width:860px){
 .cvqs .cvqs-section-end .cvqs-section-photo{height:var(--qs-end-height,300px)!important;min-height:0!important;max-height:none}
}
