
[hidden]{display:none !important;}

:root{
  --font-main:"Futura Medium","Futura","Trebuchet MS",Arial,sans-serif;
  --white:rgba(255,255,255,0.96);
  --white-soft:rgba(255,255,255,0.55);
  --white-mid:rgba(255,255,255,0.42);
  --dark:rgba(23,23,23,0.96);
  --dark-soft:rgba(28,28,28,0.36);
}

*{box-sizing:border-box}
html,body{
  margin:0;
  min-height:100%;
  background:#000;
  font-family:var(--font-main);
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
}
body{overflow:hidden}
a{text-decoration:none}
.nowrap{white-space:nowrap}

.desktop-shell{
  position:relative;
  min-height:100vh;
  width:100%;
  overflow:hidden;
  background:#000;
}
.desktop-only{display:block}
.mobile-only{display:none}

.desktop-canvas{
  position:absolute;
  left:50%;
  top:50%;
  width:2048px;
  height:1152px;
  transform:translate(-50%,-50%) scale(var(--canvas-scale,1));
  transform-origin:center center;
  will-change:transform;
  overflow:hidden;
}
.canvas-bg{
  position:absolute;
  inset:0;
  width:2048px;
  height:1152px;
  display:block;
  user-select:none;
  pointer-events:none;
}
.canvas-home,
.canvas-lang,
.canvas-credit,
.home-menu,
.home-logo,
.creative-copy,
.creative-label,
.who-logo,
.who-copy,
.legal-logo,
.legal-copy,
.contact-copy{
  position:absolute;
  z-index:10;
}

.canvas-home,
.lang-link,
.home-menu-item,
.mobile-home,
.mobile-home-menu a{
  font-family:var(--font-main);
  font-weight:500;
}

.canvas-home{
  left:48px;
  top:38px;
  letter-spacing:0.18em;
  font-size:20px;
  z-index:40;
}
.canvas-home-light{color:rgba(255,255,255,0.75)}
.canvas-home-dark{color:rgba(26,26,26,0.62)}

.canvas-lang{
  right:58px;
  top:42px;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:12px;
  z-index:40;
}
.lang-link{
  font-size:24px;
  letter-spacing:0.02em;
  opacity:0.35;
  color:inherit;
}
.canvas-lang-light{color:#fff}
.canvas-lang-dark{color:#111}
.canvas-lang .lang-link.is-active{opacity:1}
.canvas-lang-dark .lang-link{color:rgba(16,16,16,0.88)}
.canvas-lang-light .lang-link{color:rgba(255,255,255,0.96)}

.canvas-credit{
  left:50%;
  bottom:24px;
  transform:translateX(-50%);
  font-size:16px;
  letter-spacing:0.02em;
  pointer-events:none;
}
.canvas-credit-light{color:rgba(255,255,255,0.22)}
.canvas-credit-dark{color:rgba(24,24,24,0.28)}

.home-logo{
  left:50%;
  top:150px;
  width:390px;
  transform:translateX(-50%);
  pointer-events:none;
}
.home-menu{
  left:50%;
  top:742px;
  width:760px;
  transform:translateX(-50%);
  display:flex;
  flex-direction:column;
  align-items:center;
}
.home-menu-item{
  width:100%;
  height:44px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  opacity:0.22;
}
.home-menu-item span{
  display:inline-block;
  font-size:32px;
  letter-spacing:0.40em;
  transform:translateY(0) scale(0.90);
  transition:transform .24s ease, opacity .24s ease, letter-spacing .24s ease;
  text-shadow:0 2px 20px rgba(0,0,0,.4);
}
.home-menu-item.is-active{opacity:1}
.home-menu-item.is-active span{
  transform:translateY(-2px) scale(1.44);
  letter-spacing:0.43em;
}
.home-menu.has-hover .home-menu-item:not(.is-active){opacity:0.14}
.home-menu.has-hover .home-menu-item:not(.is-active) span{transform:scale(.84)}
.home-menu.has-hover .home-menu-item.is-active span{transform:translateY(-2px) scale(1.44)}

.creative-copy{
  left:420px;
  top:96px;
  width:1208px;
  text-align:center;
  color:#111;
}
.creative-copy h1{
  margin:0 0 19px;
  font-size:62px;
  line-height:1;
  font-weight:500;
}
.creative-copy p{
  margin:0;
  font-size:31px;
  line-height:1.14;
  white-space:nowrap;
}
.creative-label{
  top:939px;
  width:252px;
  transform:translateX(-50%);
  text-align:center;
  color:#111;
}
.creative-label h2{
  margin:0 0 20px;
  font-size:18px;
  line-height:1;
  font-weight:600;
  color:rgba(0,0,0,0.18);
  white-space:nowrap;
}
.creative-label p{
  margin:5px 0 0;
  font-size:16px;
  line-height:1.02;
  font-weight:600;
  color:rgba(0,0,0,0.97);
  text-transform:uppercase;
  white-space:nowrap;
}
.creative-label p.muted{
  color:rgba(0,0,0,0.24);
  font-weight:500;
}

.who-logo{
  left:50%;
  top:226px;
  width:258px;
  transform:translateX(-50%);
  opacity:0.18;
}
.who-copy{
  left:50%;
  top:579px;
  width:auto;
  transform:translateX(-50%);
  text-align:center;
  color:rgba(24,24,24,0.92);
}
.who-copy .who-copy-top,
.who-copy .who-copy-bottom{
  display:flex;
  flex-direction:column;
  align-items:center;
}
.who-copy .who-copy-top{margin-bottom:78px}
.who-copy .line{
  display:block;
  white-space:nowrap;
  font-size:32px;
  line-height:1.18;
  font-weight:500;
}
.who-copy strong{font-weight:700}
.who-copy .line + .line{margin-top:17px}


.legal-logo{
  left:50%;
  top:44px;
  width:124px;
  transform:translateX(-50%);
  opacity:0.18;
}
.legal-copy{
  position:absolute;
  inset:0;
  color:rgba(255,255,255,0.24);
  text-align:center;
}
.legal-copy .line{
  display:block;
  white-space:nowrap;
  font-size:17px;
  line-height:1.05;
  font-weight:500;
}
.legal-copy .title{
  font-weight:700;
}
.legal-meta{
  position:absolute;
  left:50%;
  top:214px;
  width:760px;
  transform:translateX(-50%);
}
.legal-meta .group + .group{margin-top:36px}
.legal-meta .line + .line{margin-top:3px}
.legal-block{
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  width:1820px;
}
.legal-block.intellectual{top:768px}
.legal-block.projects{top:900px}
.legal-block.liability{top:1028px}
.legal-block.links{top:1144px}
.legal-block .block-title{
  display:block;
  margin-bottom:22px;
  font-size:17px;
  line-height:1;
  font-weight:700;
  color:rgba(255,255,255,0.30);
}
.legal-block .line + .line{margin-top:3px}
.contact-copy{
  position:absolute;
  z-index:10;
}

.canvas-home,
.lang-link,
.home-menu-item,
.mobile-home,
.mobile-home-menu a{
  font-family:var(--font-main);
  font-weight:500;
}

.canvas-home{
  left:48px;
  top:38px;
  letter-spacing:0.18em;
  font-size:20px;
  z-index:40;
}
.canvas-home-light{color:rgba(255,255,255,0.75)}
.canvas-home-dark{color:rgba(26,26,26,0.62)}

.canvas-lang{
  right:58px;
  top:42px;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:12px;
  z-index:40;
}
.lang-link{
  font-size:24px;
  letter-spacing:0.02em;
  opacity:0.35;
  color:inherit;
}
.canvas-lang-light{color:#fff}
.canvas-lang-dark{color:#111}
.canvas-lang .lang-link.is-active{opacity:1}
.canvas-lang-dark .lang-link{color:rgba(16,16,16,0.88)}
.canvas-lang-light .lang-link{color:rgba(255,255,255,0.96)}

.canvas-credit{
  left:50%;
  bottom:24px;
  transform:translateX(-50%);
  font-size:16px;
  letter-spacing:0.02em;
  pointer-events:none;
}
.canvas-credit-light{color:rgba(255,255,255,0.22)}
.canvas-credit-dark{color:rgba(24,24,24,0.28)}

.home-logo{
  left:50%;
  top:150px;
  width:390px;
  transform:translateX(-50%);
  pointer-events:none;
}
.home-menu{
  left:50%;
  top:742px;
  width:760px;
  transform:translateX(-50%);
  display:flex;
  flex-direction:column;
  align-items:center;
}
.home-menu-item{
  width:100%;
  height:44px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  opacity:0.22;
}
.home-menu-item span{
  display:inline-block;
  font-size:32px;
  letter-spacing:0.40em;
  transform:translateY(0) scale(0.90);
  transition:transform .24s ease, opacity .24s ease, letter-spacing .24s ease;
  text-shadow:0 2px 20px rgba(0,0,0,.4);
}
.home-menu-item.is-active{opacity:1}
.home-menu-item.is-active span{
  transform:translateY(-2px) scale(1.44);
  letter-spacing:0.43em;
}
.home-menu.has-hover .home-menu-item:not(.is-active){opacity:0.14}
.home-menu.has-hover .home-menu-item:not(.is-active) span{transform:scale(.84)}
.home-menu.has-hover .home-menu-item.is-active span{transform:translateY(-2px) scale(1.44)}

.creative-copy{
  left:420px;
  top:96px;
  width:1208px;
  text-align:center;
  color:#111;
}
.creative-copy h1{
  margin:0 0 19px;
  font-size:62px;
  line-height:1;
  font-weight:500;
}
.creative-copy p{
  margin:0;
  font-size:31px;
  line-height:1.14;
  white-space:nowrap;
}
.creative-label{
  top:939px;
  width:252px;
  transform:translateX(-50%);
  text-align:center;
  color:#111;
}
.creative-label h2{
  margin:0 0 20px;
  font-size:18px;
  line-height:1;
  font-weight:600;
  color:rgba(0,0,0,0.18);
  white-space:nowrap;
}
.creative-label p{
  margin:5px 0 0;
  font-size:16px;
  line-height:1.02;
  font-weight:600;
  color:rgba(0,0,0,0.97);
  text-transform:uppercase;
  white-space:nowrap;
}
.creative-label p.muted{
  color:rgba(0,0,0,0.24);
  font-weight:500;
}

.who-logo{
  left:50%;
  top:226px;
  width:258px;
  transform:translateX(-50%);
  opacity:0.18;
}
.who-copy{
  left:50%;
  top:579px;
  width:auto;
  transform:translateX(-50%);
  text-align:center;
  color:rgba(24,24,24,0.92);
}
.who-copy .who-copy-top,
.who-copy .who-copy-bottom{
  display:flex;
  flex-direction:column;
  align-items:center;
}
.who-copy .who-copy-top{margin-bottom:78px}
.who-copy .line{
  display:block;
  white-space:nowrap;
  font-size:32px;
  line-height:1.18;
  font-weight:500;
}
.who-copy strong{font-weight:700}
.who-copy .line + .line{margin-top:17px}

.legal-logo{
  left:50%;
  top:72px;
  width:164px;
  transform:translateX(-50%);
  opacity:0.22;
}
.legal-copy{
  position:absolute;
  inset:0;
  color:rgba(255,255,255,0.40);
  text-align:center;
}
.legal-copy .line{
  display:block;
  white-space:nowrap;
  font-size:22px;
  line-height:1.05;
  font-weight:500;
}
.legal-copy .title{
  font-weight:700;
}
.legal-meta{
  position:absolute;
  left:50%;
  top:172px;
  width:760px;
  transform:translateX(-50%);
}
.legal-meta .group + .group{margin-top:40px}
.legal-meta .line + .line{margin-top:4px}
.legal-block{
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  width:1818px;
}
.legal-block.intellectual{top:620px}
.legal-block.projects{top:776px}
.legal-block.liability{top:924px}
.legal-block.links{top:1068px}
.legal-block .block-title{
  display:block;
  margin-bottom:22px;
  font-size:26px;
  line-height:1;
  font-weight:700;
  color:rgba(255,255,255,0.46);
}
.legal-block .line + .line{margin-top:4px}

.contact-copy{
  left:50%;
  top:420px;
  width:1200px;
  transform:translateX(-50%);
  text-align:center;
  color:rgba(255,255,255,0.72);
}
.contact-copy h1{
  margin:0 0 26px;
  font-size:62px;
  line-height:1;
  font-weight:500;
}
.contact-copy p{
  margin:0 0 18px;
  font-size:30px;
  line-height:1.2;
}
.contact-copy a{color:rgba(255,255,255,0.88)}

.mobile-bg{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  z-index:0;
}
.mobile-home,
.mobile-lang,
.mobile-credit,
.mobile-home-logo,
.mobile-home-menu,
.creative-mobile-copy,
.who-mobile-logo,
.who-mobile-copy,
.legal-mobile-logo,
.legal-mobile-copy,
.contact-mobile-copy{
  position:relative;
  z-index:2;
}
.mobile-home{
  position:fixed;
  top:max(18px, env(safe-area-inset-top) + 8px);
  left:16px;
  font-size:14px;
  letter-spacing:0.16em;
}
.mobile-home-light{color:rgba(255,255,255,0.75)}
.mobile-home-dark{color:rgba(16,16,16,0.7)}
.mobile-lang{
  position:fixed;
  top:max(18px, env(safe-area-inset-top) + 8px);
  right:16px;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:6px;
}
.mobile-lang .lang-link{
  font-size:18px;
}
.mobile-lang-light{color:#fff}
.mobile-lang-dark{color:#111}
.mobile-lang .lang-link.is-active{opacity:1}
.mobile-home,
.mobile-lang{z-index:30}

.mobile-home{
  text-decoration:none;
}

.mobile-home-page,
.creative-mobile-page,
.who-mobile-page,
.legal-mobile-page,
.contact-mobile-page{
  position:relative;
  min-height:100svh;
  overflow:hidden;
  padding:calc(max(72px, env(safe-area-inset-top) + 56px)) 18px calc(env(safe-area-inset-bottom) + 18px);
}

.mobile-home-logo{
  display:block;
  width:min(64vw, 320px);
  margin:140px auto 0;
}
.mobile-home-menu{
  margin:118px auto 0;
  display:flex;
  flex-direction:column;
  align-items:center;
}
.mobile-home-item{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:30px;
  color:#fff;
  opacity:0.26;
}
.mobile-home-item span{
  font-size:clamp(16px,4.4vw,22px);
  letter-spacing:0.28em;
}
.mobile-home-item.is-active{opacity:1}

.creative-mobile-copy{
  text-align:center;
  margin:84px auto 20px;
  color:#111;
  max-width:27rem;
}
.creative-mobile-copy h1{
  margin:0 0 12px;
  font-size:32px;
  font-weight:500;
}
.creative-mobile-copy p{
  margin:0;
  font-size:16px;
  line-height:1.25;
}
.mobile-cards{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:1fr;
  gap:14px;
  max-width:420px;
  margin:0 auto;
}
.mobile-card{
  padding:14px 14px 18px;
  text-align:center;
  color:#111;
  background:rgba(255,255,255,0.24);
  backdrop-filter:blur(8px);
  border:1px solid rgba(0,0,0,0.08);
}
.mobile-poster{
  width:100%;
  aspect-ratio:100/165;
  margin:0 auto 12px;
  background-size:cover;
  background-position:center;
}
.poster-redpact{background-image:url("assets/creative-river-bg.webp");background-position:0% 52%}
.poster-island{background-image:url("assets/creative-river-bg.webp");background-position:16.7% 52%}
.poster-empire{background-image:url("assets/creative-river-bg.webp");background-position:33.2% 52%}
.poster-difference{background-image:url("assets/creative-river-bg.webp");background-position:49.7% 52%}
.poster-illusions{background-image:url("assets/creative-river-bg.webp");background-position:66.5% 52%}
.poster-cercle{background-image:url("assets/creative-river-bg.webp");background-position:83.2% 52%}
.poster-roseaux{background-image:url("assets/creative-river-bg.webp");background-position:100% 52%}
.mobile-card h2{
  margin:0 0 8px;
  font-size:18px;
  font-weight:600;
}
.mobile-card p{
  margin:3px 0 0;
  font-size:14px;
  line-height:1.1;
  font-weight:600;
}
.mobile-card p.muted{font-weight:500;color:rgba(0,0,0,0.38)}

.who-mobile-logo{
  display:block;
  width:92px;
  margin:84px auto 26px;
  opacity:0.18;
}
.who-mobile-copy{
  max-width:31rem;
  margin:0 auto;
  text-align:center;
  color:rgba(24,24,24,0.92);
}
.who-mobile-copy p{
  margin:0 0 1rem;
  font-size:18px;
  line-height:1.48;
}
.who-mobile-copy strong{font-weight:700}

.legal-mobile-logo{
  display:block;
  width:84px;
  margin:66px auto 26px;
  opacity:0.22;
}
.legal-mobile-copy{
  max-width:34rem;
  margin:0 auto;
  text-align:center;
  color:rgba(255,255,255,0.42);
}
.legal-mobile-copy p{
  margin:0 0 1rem;
  font-size:16px;
  line-height:1.42;
}
.legal-mobile-copy strong{font-weight:700;color:rgba(255,255,255,0.50)}

.contact-mobile-copy{
  max-width:34rem;
  margin:180px auto 0;
  text-align:center;
  color:rgba(255,255,255,0.76);
}
.contact-mobile-copy h1{
  margin:0 0 16px;
  font-size:32px;
  font-weight:500;
}
.contact-mobile-copy p{
  margin:0 0 14px;
  font-size:18px;
  line-height:1.3;
}
.contact-mobile-copy a{color:rgba(255,255,255,0.94)}

.mobile-credit{
  position:relative;
  z-index:2;
  width:100%;
  text-align:center;
  margin-top:24px;
  padding-bottom:calc(env(safe-area-inset-bottom) + 6px);
  font-size:14px;
}
.mobile-credit-light{color:rgba(255,255,255,0.22)}
.mobile-credit-dark{color:rgba(24,24,24,0.28)}

@media (max-width: 900px) and (pointer: coarse){
  body{overflow:auto}
  .desktop-only{display:none}
  .mobile-only{display:block}
}


/* MASTER V3 precision overrides */
.desktop-canvas{backface-visibility:hidden;-webkit-font-smoothing:antialiased;}
.canvas-lang,.canvas-home,.home-menu,.home-logo,.creative-copy,.creative-label,.who-logo,.who-copy,.legal-logo,.legal-copy,.canvas-credit{transform-style:preserve-3d;}

/* Homepage validated composition */
.home-logo{top:136px;width:388px;}
.home-menu{top:742px;}
.canvas-lang{right:58px;top:42px;}

/* Legal page exact composition */
.legal-logo{left:50%;top:102px;width:140px;transform:translateX(-50%);opacity:0.18;}
.legal-copy{position:absolute;inset:0;text-align:center;color:rgba(255,255,255,0.21);}
.legal-copy .line{display:block;white-space:nowrap;font-size:16px;line-height:1.08;font-weight:500;letter-spacing:0.005em;}
.legal-copy .title{font-weight:600;}
.legal-meta{position:absolute;left:50%;top:321px;width:760px;transform:translateX(-50%);}
.legal-meta .group + .group{margin-top:38px;}
.legal-meta .line + .line{margin-top:6px;}
.legal-block{position:absolute;left:50%;transform:translateX(-50%);width:1710px;}
.legal-block.intellectual{top:663px;}
.legal-block.projects{top:768px;}
.legal-block.liability{top:881px;}
.legal-block.links{top:989px;}
.legal-block .block-title{display:block;margin-bottom:14px;font-size:17px;line-height:1;font-weight:600;color:rgba(255,255,255,0.26);}
.legal-block .line + .line{margin-top:6px;}
.page-legal .canvas-home{z-index:40;}
.page-legal .canvas-lang{z-index:40;}

/* Prevent desktop from flipping to vertical layout on narrow non-touch windows */
@media (max-width: 900px) and (pointer: fine){
  body{overflow:hidden;}
  .desktop-only{display:block;}
  .mobile-only{display:none;}
}


/* LEGAL 03 final locked */
.page-legal .legal-logo{left:50%;top:74px;width:166px;transform:translateX(-50%);opacity:0.22;}
.page-legal .legal-copy-final{position:absolute;inset:0;text-align:center;color:rgba(255,255,255,0.42);}
.page-legal .legal-copy-final .line{display:block;white-space:nowrap;font-size:15px;line-height:1.08;font-weight:500;letter-spacing:0.003em;}
.page-legal .legal-copy-final .title{font-weight:600;}
.page-legal .legal-meta-final{position:absolute;left:50%;top:266px;width:760px;transform:translateX(-50%);}
.page-legal .legal-meta-final .group + .group{margin-top:42px;}
.page-legal .legal-meta-final .line + .line{margin-top:6px;}
.page-legal .legal-block-final{position:absolute;left:50%;transform:translateX(-50%);width:1460px;}
.page-legal .legal-block-final.intellectual{top:802px;}
.page-legal .legal-block-final.disclaimer{top:944px;}
.page-legal .legal-block-final .block-title{display:block;margin-bottom:14px;font-size:16px;line-height:1;font-weight:600;color:rgba(255,255,255,0.34);}
.page-legal .legal-block-final .line + .line{margin-top:7px;}
.page-legal .legal-copy:not(.legal-copy-final){display:none !important;}
.page-legal .legal-mobile-copy{max-width:38rem;color:rgba(255,255,255,0.46);}
.page-legal .legal-mobile-copy p{font-size:15px;line-height:1.45;margin:0 0 1.15rem;}
.page-legal .legal-mobile-copy strong{color:rgba(255,255,255,0.58);}


/* Popup V1 */
.creative-hotspots{position:absolute;inset:0;z-index:22;}
.creative-hotspot{position:absolute;border:0;background:transparent;cursor:pointer;border-radius:2px;}
.creative-hotspot:hover,.creative-hotspot:focus-visible{outline:1px solid rgba(255,255,255,0.25);outline-offset:0;}
.js-mobile-property{cursor:pointer;}
.contact-popup{position:absolute;inset:0;z-index:90;display:flex;align-items:center;justify-content:center;}
.contact-popup__overlay{position:absolute;inset:0;background:rgba(235,235,235,0.38);backdrop-filter:blur(4px);}
.contact-popup__panel{position:relative;width:748px;min-height:272px;padding:56px 56px 46px;background:url('assets/home-bg.webp') center center / cover no-repeat;box-shadow:0 20px 60px rgba(0,0,0,0.18);display:flex;align-items:center;justify-content:center;}
.contact-popup__panel::before{content:'';position:absolute;inset:0;background:rgba(255,255,255,0.08);}
.contact-popup__form{position:relative;z-index:1;width:100%;display:flex;flex-direction:column;align-items:center;text-align:center;}
.contact-popup__copy h3{margin:0 0 30px;font-size:19px;line-height:1.12;font-weight:500;letter-spacing:0.02em;color:rgba(18,18,18,0.90);text-transform:uppercase;}
.contact-popup__input{width:478px;height:58px;border:0;background:rgba(255,255,255,0.93);padding:0 20px;font-family:var(--font-main);font-size:22px;color:#222;outline:none;}
.contact-popup__submit{align-self:flex-end;margin-top:34px;margin-right:62px;border:0;background:transparent;color:rgba(255,255,255,0.96);font-family:var(--font-main);font-size:24px;font-weight:500;cursor:pointer;}
.contact-popup__close{position:absolute;top:14px;right:18px;border:0;background:transparent;color:rgba(255,255,255,0.85);font-size:30px;line-height:1;cursor:pointer;z-index:2;}
.contact-popup__note{margin:14px 0 0;font-size:12px;line-height:1.25;color:rgba(20,20,20,0.68);}
.contact-popup--mobile{position:fixed;}
.contact-popup--mobile .contact-popup__panel{width:min(88vw,520px);min-height:0;padding:34px 24px 28px;}
.contact-popup--mobile .contact-popup__copy h3{font-size:15px;margin-bottom:20px;}
.contact-popup--mobile .contact-popup__input{width:100%;height:52px;font-size:18px;}
.contact-popup--mobile .contact-popup__submit{margin-top:20px;margin-right:0;align-self:center;font-size:22px;}
@media (max-width: 900px){
  .contact-popup{position:fixed;}
  .contact-popup__panel{width:min(88vw,520px);min-height:0;padding:34px 24px 28px;}
  .contact-popup__copy h3{font-size:15px;margin-bottom:20px;}
  .contact-popup__input{width:100%;height:52px;font-size:18px;}
  .contact-popup__submit{margin-top:20px;margin-right:0;align-self:center;font-size:22px;}
}


/* Creative River popup: top text in white */
.page-creative .contact-popup__copy h3{
  color:rgba(255,255,255,0.96);
}


/* Contact page: show the same popup directly */
.page-contact .contact-popup{
  display:flex;
}
.page-contact .contact-popup__copy h3{
  color:rgba(255,255,255,0.96);
}


/* Contact page: show the Creative River popup immediately */
.page-contact #contactPopup,
.page-contact #contactPopupMobile,
.page-contact #propertyPopup,
.page-contact #propertyPopupMobile{
  display:flex !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
}

.page-contact .contact-popup__panel,
.page-contact .contact-popup__panel--mobile{
  transform:none !important;
}

.page-contact .contact-popup__copy h3,
.page-contact .contact-popup__copy p,
.page-contact .contact-popup__copy span,
.page-contact .contact-popup__copy strong{
  color:rgba(255,255,255,0.96) !important;
}


/* Contact final tweak: remove overlay veil and keep background only */
.page-contact .contact-popup,
.page-contact #contactPopup,
.page-contact #contactPopupMobile,
.page-contact #propertyPopup,
.page-contact #propertyPopupMobile{
  background: transparent !important;
  backdrop-filter: none !important;
}

.page-contact .contact-popup::before,
.page-contact .contact-popup::after,
.page-contact #contactPopup::before,
.page-contact #contactPopup::after,
.page-contact #contactPopupMobile::before,
.page-contact #contactPopupMobile::after,
.page-contact #propertyPopup::before,
.page-contact #propertyPopup::after,
.page-contact #propertyPopupMobile::before,
.page-contact #propertyPopupMobile::after{
  display:none !important;
  content:none !important;
}

.page-contact .contact-popup__backdrop,
.page-contact .popup-backdrop,
.page-contact .modal-backdrop,
.page-contact [class*="backdrop"],
.page-contact [class*="overlay"]{
  background: transparent !important;
  opacity: 0 !important;
  display: none !important;
  backdrop-filter: none !important;
}


/* Contact: make top-left Home button really clickable */
.page-contact .canvas-home,
.page-contact .mobile-home,
.page-contact .canvas-lang,
.page-contact .mobile-lang{
  position: relative;
  z-index: 200 !important;
  pointer-events: auto !important;
}

.page-contact .contact-popup,
.page-contact #contactPopup,
.page-contact #contactPopupMobile,
.page-contact #propertyPopup,
.page-contact #propertyPopupMobile{
  pointer-events: none !important;
}

.page-contact .contact-popup__panel,
.page-contact .contact-popup__form,
.page-contact .contact-popup__close,
.page-contact .contact-popup__input,
.page-contact .contact-popup__submit{
  pointer-events: auto !important;
}


/* Performance optimization */
.canvas-bg,.mobile-bg{object-fit:cover;}
img[decoding="async"]{content-visibility:auto;}
