/* R1.1.6 — Desktop/Laptop register composition only.
   The existing form and the <=767px mobile presentation remain frozen. */

.register-shell{
  width:min(1180px,calc(100vw - 48px));
  min-height:min(700px,calc(100vh - 40px));
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(420px,460px);
  align-items:center;
  gap:clamp(22px,4vw,58px);
  direction:ltr;
}

.register-shell>.auth-card,
.register-visual{direction:rtl}

.register-shell>.auth-card{
  width:100%;
  position:relative;
  z-index:2;
}

.register-visual{
  min-width:0;
  min-height:620px;
  align-self:stretch;
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  overflow:hidden;
  padding:clamp(30px,4vw,54px);
  border:1px solid rgba(177,146,81,.24);
  border-radius:30px;
  background:
    radial-gradient(circle at bottom right,rgba(199,154,59,.24),transparent 34%),
    radial-gradient(circle at top left,rgba(255,253,248,.82),transparent 36%),
    linear-gradient(145deg,#e7f0e9 0%,#f8f1e3 54%,#fffaf0 100%);
  box-shadow:0 24px 70px rgba(37,68,55,.12);
  isolation:isolate;
}

.register-visual::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  opacity:.11;
  background:url("assets/images/landing/decorations/landing-corner-pattern.webp") top left/340px auto no-repeat;
  transform:scaleX(-1);
}

.register-visual::after{
  content:"";
  position:absolute;
  width:320px;
  height:320px;
  left:-110px;
  bottom:-150px;
  z-index:-1;
  border:1px solid rgba(199,154,59,.24);
  border-radius:50%;
  box-shadow:0 0 80px rgba(199,154,59,.14);
}

.register-visual-copy{position:relative;z-index:2;max-width:520px}
.register-journey-tag{
  display:inline-flex;
  align-items:center;
  min-height:31px;
  padding:5px 12px;
  border:1px solid rgba(177,146,81,.28);
  border-radius:999px;
  background:rgba(255,253,248,.7);
  color:#876b2d;
  font-size:13px;
  font-weight:800;
}
.register-visual h2{
  margin:13px 0 8px;
  color:var(--green);
  font-size:clamp(30px,3.15vw,48px);
  line-height:1.18;
  letter-spacing:-.025em;
}
.register-visual p{
  margin:0;
  color:#557068;
  font-size:clamp(15px,1.45vw,19px);
  line-height:1.8;
}
.register-visual>img{
  width:min(100%,650px);
  height:auto;
  margin:-14px auto -5px;
  object-fit:contain;
  filter:drop-shadow(0 22px 22px rgba(24,51,43,.14));
}
.register-visual-notes{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  gap:9px;
  flex-wrap:wrap;
}
.register-visual-notes span{
  padding:7px 12px;
  border:1px solid rgba(11,75,58,.13);
  border-radius:999px;
  background:rgba(255,253,248,.75);
  color:var(--green);
  font-size:13px;
  font-weight:750;
}

@media (min-width:768px) and (max-width:1050px){
  .register-shell{
    width:min(100% - 32px,1000px);
    grid-template-columns:minmax(0,1fr) minmax(398px,438px);
    gap:18px;
  }
  .register-visual{min-height:580px;padding:28px 24px}
  .register-visual h2{font-size:30px}
  .register-visual>img{width:min(100%,500px)}
}

@media (max-width:767px){
  .register-shell{
    display:block;
    width:min(100%,460px);
    min-height:0;
  }
  .register-visual{display:none}
  .register-shell>.auth-card{width:min(100%,460px)}
}

@media (prefers-reduced-motion:no-preference) and (min-width:768px){
  .register-visual>img{animation:register-scene-breathe 7s ease-in-out infinite}
}

@keyframes register-scene-breathe{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-5px)}
}
