.dshp-page{--dshp-ink:#101820;background:var(--dshp-bg);color:var(--dshp-ink);font-family:Inter,Arial,sans-serif;overflow:hidden}
.dshp-page *{box-sizing:border-box}.dshp-container{width:min(1180px,calc(100% - 56px));margin-inline:auto}.dshp-hero{background:var(--dshp-bg)}.dshp-hero-grid{display:grid;grid-template-columns:49% 51%;min-height:610px;align-items:stretch}.dshp-hero-text{padding:112px 48px 100px 0;display:flex;align-items:flex-start;justify-content:center;flex-direction:column}.dshp-eyebrow{font-size:12px;letter-spacing:.17em;font-weight:700;color:var(--dshp-accent);text-transform:uppercase;margin:0 0 18px}.dshp-page h1,.dshp-page h2,.dshp-page h3{font-family:Montserrat,Arial,sans-serif;color:var(--dshp-ink);line-height:1.15}.dshp-hero h1{font-size:clamp(44px,5.1vw,78px);letter-spacing:-.05em;font-weight:800;margin:0 0 13px}.dshp-tagline{font-size:clamp(20px,2.2vw,30px);margin:0;font-weight:600}.dshp-hero-rule{width:66px;height:4px;background:var(--dshp-accent);margin:35px 0 25px}.dshp-notice{font-size:14px;color:var(--dshp-accent);font-weight:700;letter-spacing:.12em;margin:0 0 22px}.dshp-actions{display:flex;gap:12px;flex-wrap:wrap}.dshp-btn{padding:15px 21px;display:inline-flex;align-items:center;justify-content:center;gap:16px;color:#fff!important;background:var(--dshp-button);border:2px solid var(--dshp-button);text-decoration:none!important;font-size:13px;font-weight:700;letter-spacing:.02em;border-radius:3px;transition:filter .2s}.dshp-btn:hover{filter:brightness(.88)}.dshp-btn-outline{color:var(--dshp-button)!important;background:transparent}.dshp-hero-visual{position:relative;background:#E9F1FA;min-height:560px}.dshp-hero-visual img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.dshp-image-placeholder{position:absolute;inset:0;display:grid;place-content:center;text-align:center;color:#587394;padding:28px;font-weight:600}.dshp-image-placeholder small{font-size:12px;font-weight:400}.dshp-shows{padding:96px 0 110px}.dshp-shows h2{font-size:clamp(30px,3.1vw,43px);letter-spacing:-.04em;margin:0 0 35px}.dshp-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.dshp-card{border:1px solid #DEE8F2;background:#fff;overflow:hidden}.dshp-card-image{height:240px;background:#EAF1F8;display:flex;align-items:center;justify-content:center;color:#56738C;font-size:13px}.dshp-card-image img{width:100%;height:100%;object-fit:cover}.dshp-card-body{padding:25px}.dshp-card h3{font-size:19px;margin:0 0 14px;min-height:44px}.dshp-card p{font-size:14px;line-height:1.7;color:#314357;min-height:100px;margin:0 0 16px}.dshp-card-link{font-size:13px;color:var(--dshp-button)!important;text-decoration:none!important;font-weight:700}.dshp-booking{background:#E9F2FC;padding:70px 0}.dshp-booking-inner{display:flex;align-items:center;justify-content:space-between;gap:36px}.dshp-booking h2{font-size:clamp(26px,3vw,40px);margin:0 0 12px}.dshp-booking p{max-width:720px;line-height:1.6;margin:0;color:#293C50}.dshp-booking-btn{white-space:nowrap}
@media(max-width:850px){.dshp-container{width:min(100% - 36px,680px)}.dshp-hero-grid{grid-template-columns:1fr}.dshp-hero-text{padding:65px 0 46px}.dshp-hero-visual{min-height:440px}.dshp-cards{grid-template-columns:1fr}.dshp-card-image{height:300px}.dshp-card h3,.dshp-card p{min-height:0}.dshp-shows{padding:65px 0}.dshp-booking-inner{flex-direction:column;align-items:flex-start}}
@media(max-width:480px){.dshp-hero h1{font-size:45px}.dshp-hero-visual{min-height:320px}.dshp-card-image{height:220px}.dshp-btn{width:100%}}

/* v1.1.0 – hero fused photographic composition */
.dshp-hero{position:relative;isolation:isolate}
.dshp-hero-grid{position:relative;grid-template-columns:49% 51%;min-height:610px}
.dshp-hero-text{position:relative;isolation:isolate;z-index:3;background:transparent;padding-right:45px}
.dshp-hero-copy{position:relative;z-index:2}
.dshp-hero-text-bg{display:none;position:absolute;inset:0 -15% 0 -10vw;background-image:var(--dshp-text-image);background-size:cover;background-position:var(--dshp-text-position,center center);opacity:var(--dshp-text-opacity,.12);pointer-events:none;z-index:0}
.dshp-text-image-on .dshp-hero-text-bg{display:block}
.dshp-hero-visual{isolation:isolate}
.dshp-hero-visual:after{content:"";position:absolute;z-index:2;inset:0;pointer-events:none;background:linear-gradient(90deg,var(--dshp-bg,#fff) 0%,color-mix(in srgb,var(--dshp-bg,#fff) 90%,transparent) 15%,transparent var(--dshp-fade,55%));opacity:0}
.dshp-fade-on .dshp-hero-visual:after{opacity:1}
.dshp-hero-visual img{object-fit:cover}
.dshp-hero-text{min-width:0}
.dshp-btn-outline{border-color:#9aafc5;background:rgba(255,255,255,.8);border-radius:5px}
.dshp-play{display:grid;place-items:center;border:1px solid currentColor;border-radius:100%;width:22px;height:22px;font-size:9px;padding-left:2px}
@media(min-width:851px){.dshp-fade-on .dshp-hero-visual{margin-left:-10%;width:110%}.dshp-hero-text{padding-top:88px;padding-bottom:88px}.dshp-hero h1{max-width:520px}}
@media(max-width:850px){.dshp-hero-text-bg{inset:0}.dshp-hero-visual:after{background:linear-gradient(180deg,var(--dshp-bg,#fff),transparent 45%)}.dshp-fade-on .dshp-hero-visual:after{opacity:1}}

/* v1.2.0 — modos de fotografia mutuamente exclusivos */
.dshp-layout-background{background-image:var(--dshp-full-image);background-position:var(--dshp-position,center center);background-size:cover;background-repeat:no-repeat}
.dshp-layout-background .dshp-hero-grid{display:block;min-height:610px;position:relative}
.dshp-layout-background .dshp-hero-text{width:min(620px,100%);min-height:610px;padding:90px 48px 90px 0;position:relative;z-index:2}
.dshp-layout-background .dshp-hero-visual{display:none!important}
.dshp-layout-background:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(90deg,var(--dshp-bg,#fff) 0%,color-mix(in srgb,var(--dshp-bg,#fff) 96%,transparent) 24%,color-mix(in srgb,var(--dshp-bg,#fff) 75%,transparent) 43%,transparent 100%);opacity:0}
.dshp-layout-background.dshp-fade-on:before{opacity:1}
.dshp-layout-background .dshp-hero h1{position:relative}
.dshp-layout-split .dshp-hero-text-bg{display:none!important}
@media(max-width:850px){.dshp-layout-background .dshp-hero-grid{min-height:540px}.dshp-layout-background .dshp-hero-text{width:100%;min-height:540px;padding:70px 0}.dshp-layout-background:before{background:linear-gradient(90deg,color-mix(in srgb,var(--dshp-bg,#fff) 94%,transparent),color-mix(in srgb,var(--dshp-bg,#fff) 60%,transparent))}}

/* v1.3.0: five mutually exclusive photographic arrangements */
.dshp-hero{--dshp-x:50%;--dshp-y:50%;--dshp-zoom:1}
.dshp-hero-visual{overflow:hidden}
.dshp-hero-visual img{object-position:var(--dshp-x) var(--dshp-y)!important;transform:scale(var(--dshp-zoom));transform-origin:var(--dshp-x) var(--dshp-y)}
.dshp-layout-background{background-image:none!important}
.dshp-layout-background::after{content:"";position:absolute;inset:0;background-image:var(--dshp-full-image);background-position:var(--dshp-x) var(--dshp-y);background-size:cover;background-repeat:no-repeat;transform:scale(var(--dshp-zoom));transform-origin:var(--dshp-x) var(--dshp-y);z-index:-2;pointer-events:none}
.dshp-layout-background::before{z-index:-1}
.dshp-layout-background .dshp-hero-text{width:min(620px,100%)}
@media(min-width:851px){
.dshp-layout-right .dshp-hero-grid,.dshp-layout-left .dshp-hero-grid{display:grid;grid-template-columns:49% 51%;align-items:stretch}
.dshp-layout-left .dshp-hero-text{grid-column:2;grid-row:1;padding:90px 0 90px 48px}
.dshp-layout-left .dshp-hero-visual{grid-column:1;grid-row:1}
.dshp-layout-left.dshp-fade-on .dshp-hero-visual{margin-left:0;margin-right:-10%;width:110%}
.dshp-layout-left .dshp-hero-visual::after{background:linear-gradient(270deg,var(--dshp-bg) 0%,color-mix(in srgb,var(--dshp-bg) 90%,transparent) 15%,transparent var(--dshp-fade,55%))}
.dshp-layout-top .dshp-hero-grid,.dshp-layout-bottom .dshp-hero-grid{display:flex;flex-direction:column;min-height:0}
.dshp-layout-top .dshp-hero-visual{order:0;min-height:480px}
.dshp-layout-top .dshp-hero-text{order:1;width:100%;padding:65px 0;min-height:0}
.dshp-layout-bottom .dshp-hero-text{order:0;width:100%;padding:65px 0;min-height:0}
.dshp-layout-bottom .dshp-hero-visual{order:1;min-height:480px}
.dshp-layout-top.dshp-fade-on .dshp-hero-visual,.dshp-layout-bottom.dshp-fade-on .dshp-hero-visual{margin:0;width:100%}
.dshp-layout-top .dshp-hero-visual::after{background:linear-gradient(0deg,var(--dshp-bg) 0%,transparent var(--dshp-fade,55%))}
.dshp-layout-bottom .dshp-hero-visual::after{background:linear-gradient(180deg,var(--dshp-bg) 0%,transparent var(--dshp-fade,55%))}
}
@media(max-width:850px){.dshp-layout-left .dshp-hero-grid,.dshp-layout-right .dshp-hero-grid,.dshp-layout-top .dshp-hero-grid,.dshp-layout-bottom .dshp-hero-grid{display:flex;flex-direction:column}.dshp-layout-top .dshp-hero-visual,.dshp-layout-left .dshp-hero-visual{order:0}.dshp-layout-top .dshp-hero-text,.dshp-layout-left .dshp-hero-text{order:1}.dshp-layout-bottom .dshp-hero-visual,.dshp-layout-right .dshp-hero-visual{order:1}.dshp-layout-bottom .dshp-hero-text,.dshp-layout-right .dshp-hero-text{order:0}}

/* v1.5.0 — correct left/right layout and responsive fullscreen player */
@media (min-width:851px) {
.dshp-hero.dshp-layout-right .dshp-hero-grid,
.dshp-hero.dshp-layout-left .dshp-hero-grid{display:grid;grid-template-columns:minmax(0,49%) minmax(0,51%);}
.dshp-hero.dshp-layout-right .dshp-hero-text{grid-column:1;grid-row:1;}
.dshp-hero.dshp-layout-right .dshp-hero-visual{grid-column:2;grid-row:1;}
.dshp-hero.dshp-layout-left .dshp-hero-text{grid-column:2;grid-row:1;}
.dshp-hero.dshp-layout-left .dshp-hero-visual{grid-column:1;grid-row:1;}
.dshp-hero.dshp-layout-left .dshp-hero-visual,.dshp-hero.dshp-layout-right .dshp-hero-visual{margin:0;width:100%;min-width:0;}
.dshp-hero.dshp-layout-left .dshp-hero-visual:after{background:linear-gradient(270deg,var(--dshp-bg,#fff) 0%,color-mix(in srgb,var(--dshp-bg,#fff) 90%,transparent) 15%,transparent var(--dshp-fade,55%));}
.dshp-hero.dshp-layout-right .dshp-hero-visual:after{background:linear-gradient(90deg,var(--dshp-bg,#fff) 0%,color-mix(in srgb,var(--dshp-bg,#fff) 90%,transparent) 15%,transparent var(--dshp-fade,55%));}
}
.dshp-video-overlay[hidden]{display:none!important}
.dshp-video-overlay{position:fixed;inset:0;z-index:2147483000;background:rgba(0,0,0,.95);display:flex;justify-content:center;align-items:center;padding:52px 20px 20px}
.dshp-video-stage{width:min(100%,calc((100dvh - 90px)*16/9));aspect-ratio:16/9;max-height:calc(100dvh - 90px)}
.dshp-video-stage iframe{display:block;border:0;width:100%;height:100%}
.dshp-video-close{position:absolute;right:20px;top:8px;border:0;background:transparent;color:#fff;font-size:42px;line-height:1;cursor:pointer;padding:5px 12px;z-index:2}
.dshp-video-close:focus-visible{outline:3px solid white}
body.dshp-video-open{overflow:hidden}


/* v1.5.1 — highlighted surname and optional no-filter mode already supported by disabling fade */
.dshp-hero-title{display:flex;flex-direction:column;gap:0;line-height:.96;margin:0}
.dshp-hero-title .dshp-title-main{display:block;color:#0E1A2A}
.dshp-hero-title .dshp-title-accent{display:block;color:var(--dshp-accent,#1978D8)}


/* v1.5.4 – full-bleed, edge-free reading mask. Never attach the mask to the copy box. */
.dshp-hero.dshp-layout-background{
  position:relative;
  isolation:isolate;
  overflow:hidden;
}
/* The single photo occupies the whole hero, behind everything. */
.dshp-hero.dshp-layout-background::after{
  content:"";
  position:absolute;
  inset:0;
  display:block;
  z-index:0;
  pointer-events:none;
  background-image:var(--dshp-full-image);
  background-position:var(--dshp-x) var(--dshp-y);
  background-size:cover;
  background-repeat:no-repeat;
  transform:scale(var(--dshp-zoom,1));
  transform-origin:var(--dshp-x) var(--dshp-y);
}
/* The mask is full hero width and height, not restricted to the text wrapper. */
.dshp-hero.dshp-layout-background.dshp-fade-on::before{
  content:"" !important;
  display:block !important;
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  z-index:1;
  pointer-events:none;
  opacity:1 !important;
  background:linear-gradient(to right,
    rgba(255,255,255,calc(.70 + var(--dshp-fade-number,55) * .0028)) 0%,
    rgba(255,255,255,calc(.70 + var(--dshp-fade-number,55) * .0028)) 21%,
    rgba(255,255,255,calc(.62 + var(--dshp-fade-number,55) * .0026)) 32%,
    rgba(255,255,255,calc(.42 + var(--dshp-fade-number,55) * .0025)) 45%,
    rgba(255,255,255,.28) 58%,
    rgba(255,255,255,.08) 70%,
    rgba(255,255,255,0) 82%);
}
.dshp-hero.dshp-layout-background:not(.dshp-fade-on)::before{
  content:none !important;
  display:none !important;
}
.dshp-hero.dshp-layout-background .dshp-hero-grid{
  position:relative;
  display:block;
  isolation:auto;
  z-index:2;
  min-height:610px;
}
.dshp-hero.dshp-layout-background .dshp-hero-text{
  position:relative;
  z-index:2;
  isolation:auto;
  width:min(620px,100%);
  min-height:610px;
  padding:90px 48px 90px 0;
}
.dshp-hero.dshp-layout-background .dshp-hero-copy{
  position:relative;
  z-index:2;
  width:min(520px,100%);
  max-width:100%;
  margin:0;
  padding:0;
  background:transparent;
  box-shadow:none;
  isolation:auto;
}
.dshp-hero.dshp-layout-background .dshp-hero-copy::before{
  content:none !important;
  display:none !important;
}
@media(max-width:850px){
  .dshp-hero.dshp-layout-background .dshp-hero-grid{min-height:540px}
  .dshp-hero.dshp-layout-background .dshp-hero-text{min-height:540px;width:100%;padding:70px 0}
  .dshp-hero.dshp-layout-background.dshp-fade-on::before{
    background:linear-gradient(to right,
      rgba(255,255,255,.94) 0%,rgba(255,255,255,.90) 35%,
      rgba(255,255,255,.75) 58%,rgba(255,255,255,.18) 85%,
      transparent 100%);
  }
}


/* v1.6.0 — composição reconstruída com base na pág. 1 do ESBOCO DS SITE.
   Foto em plano integral, máscara com a MESMA altura do hero e desaparecimento
   progressivo sem arestas verticais ou caixas atrás do texto. */
.dshp-page .dshp-hero.dshp-layout-background {
  position:relative !important;
  isolation:isolate !important;
  overflow:hidden !important;
  min-height:clamp(570px,48vw,710px);
  background:var(--dshp-bg,#fff) !important;
}
/* A imagem é uma camada independente, igual em extensão ao próprio hero. */
.dshp-page .dshp-hero.dshp-layout-background::after {
  content:"" !important;
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  transform:scale(var(--dshp-zoom,1)) !important;
  transform-origin:var(--dshp-x,50%) var(--dshp-y,50%) !important;
  background-image:var(--dshp-full-image) !important;
  background-position:var(--dshp-x,50%) var(--dshp-y,50%) !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
  z-index:0 !important;
  pointer-events:none !important;
}
/* Branco à esquerda; começa a desaparecer a meio e é 100% transparente à direita. */
.dshp-page .dshp-hero.dshp-layout-background.dshp-fade-on::before {
  content:"" !important;
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  z-index:1 !important;
  opacity:1 !important;
  pointer-events:none !important;
  background:linear-gradient(90deg,
    rgba(255,255,255,calc(.65 + var(--dshp-fade-number,65) * .0035)) 0%,
    rgba(255,255,255,calc(.65 + var(--dshp-fade-number,65) * .0035)) 16%,
    rgba(255,255,255,calc(.59 + var(--dshp-fade-number,65) * .0033)) 28%,
    rgba(255,255,255,calc(.46 + var(--dshp-fade-number,65) * .0029)) 39%,
    rgba(255,255,255,.42) 50%,
    rgba(255,255,255,.12) 62%,
    rgba(255,255,255,0) 76%,
    rgba(255,255,255,0) 100%) !important;
}
.dshp-page .dshp-hero.dshp-layout-background:not(.dshp-fade-on)::before{display:none!important;content:none!important}
.dshp-page .dshp-hero.dshp-layout-background .dshp-hero-grid {
  position:relative !important;
  display:block !important;
  z-index:2 !important;
  isolation:auto !important;
  min-height:clamp(570px,48vw,710px) !important;
}
.dshp-page .dshp-hero.dshp-layout-background .dshp-hero-text {
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  position:relative !important;
  z-index:2 !important;
  isolation:auto !important;
  min-height:clamp(570px,48vw,710px) !important;
  width:min(560px,55%) !important;
  padding:75px 0 !important;
  background:none !important;
}
.dshp-page .dshp-hero.dshp-layout-background .dshp-hero-copy {
  position:relative !important;
  z-index:3 !important;
  isolation:auto !important;
  padding:0 !important;
  margin:0 !important;
  background:none !important;
  box-shadow:none !important;
  width:100% !important;
}
.dshp-page .dshp-hero.dshp-layout-background .dshp-hero-copy::before,
.dshp-page .dshp-hero.dshp-layout-background .dshp-hero-copy::after{content:none!important;display:none!important}
.dshp-page .dshp-hero.dshp-layout-background .dshp-hero-title{margin-bottom:18px}
.dshp-page .dshp-hero.dshp-layout-background .dshp-tagline{color:#17253a !important;font-weight:650}
.dshp-page .dshp-hero.dshp-layout-background .dshp-hero-rule{margin:22px 0 20px}
.dshp-page .dshp-hero.dshp-layout-background .dshp-notice{margin-bottom:18px}
@media(max-width:850px){
 .dshp-page .dshp-hero.dshp-layout-background,
 .dshp-page .dshp-hero.dshp-layout-background .dshp-hero-grid{min-height:560px!important}
 .dshp-page .dshp-hero.dshp-layout-background .dshp-hero-text{min-height:560px!important;width:min(460px,85%)!important;padding:55px 0!important}
 .dshp-page .dshp-hero.dshp-layout-background.dshp-fade-on::before{background:linear-gradient(90deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.92) 30%,rgba(255,255,255,.63) 62%,rgba(255,255,255,.14) 90%)!important}
}
@media(max-width:560px){
 .dshp-page .dshp-hero.dshp-layout-background .dshp-hero-text{width:100%!important}
 .dshp-page .dshp-hero.dshp-layout-background.dshp-fade-on::before{background:linear-gradient(90deg,rgba(255,255,255,.97),rgba(255,255,255,.88) 62%,rgba(255,255,255,.55))!important}
}
