/* v1.4.5 — One layout contract for both the public page and Gutenberg SSR preview. */
.arslan-module-hero .hero-grid,
.editor-styles-wrapper .arslan-module-hero .hero-grid {
  box-sizing:border-box;
  width:min(var(--arslan-hero-max-width,1600px),calc(100% - 48px));
  max-width:none;
  margin-inline:auto;
  display:grid;
  grid-template-columns:minmax(0,calc(100% - var(--arslan-image-column,53%) - 34px)) minmax(0,var(--arslan-image-column,53%));
  gap:34px;
  align-items:center;
  padding:54px 0;
  min-height:0;
  overflow:visible;
  container-type:inline-size;
}
.arslan-module-hero .hero-copy,
.editor-styles-wrapper .arslan-module-hero .hero-copy {min-width:0;position:relative;z-index:1}
.arslan-module-hero .hero-copy h1,
.editor-styles-wrapper .arslan-module-hero .hero-copy h1 {
  font-size:clamp(34px,4.25cqw,70px);
  line-height:1.08;
  font-weight:850;
  letter-spacing:-.055em;
  margin:12px 0 20px;
  color:var(--hero-heading,#18212d);
}
.arslan-module-hero .hero-visual,
.editor-styles-wrapper .arslan-module-hero .hero-visual {
  min-width:0;
  max-width:100%;
  width:100%;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  position:relative;
  overflow:hidden;
}
.arslan-module-hero .hero-visual>picture,
.editor-styles-wrapper .arslan-module-hero .hero-visual>picture {
  display:block;
  flex:0 1 auto;
  width:min(100%,var(--arslan-image-scale,100%));
  max-width:100%;
  margin:0;
  transform:none;
}
.arslan-module-hero .hero-visual .hero-photo,
.editor-styles-wrapper .arslan-module-hero .hero-visual .hero-photo {
  display:block;
  width:min(100%,var(--arslan-image-scale,100%));
  max-width:100%;
  max-height:none;
  height:auto;
  margin:0 0 0 auto;
  transform:none;
  object-fit:contain;
  border-radius:var(--arslan-block-radius,28px);
}
.arslan-module-hero .hero-visual>picture .hero-photo,
.editor-styles-wrapper .arslan-module-hero .hero-visual>picture .hero-photo {width:100%;margin:0}
.arslan-module-hero .hero-grid.arslan-image-left .hero-visual,
.editor-styles-wrapper .arslan-module-hero .hero-grid.arslan-image-left .hero-visual {justify-content:flex-start}
.arslan-module-hero .hero-grid.arslan-image-left .hero-visual .hero-photo,
.editor-styles-wrapper .arslan-module-hero .hero-grid.arslan-image-left .hero-visual .hero-photo {margin-left:0;margin-right:auto}
/* Small positioning adjustments never move the image outside its safe visual column. */
@media(min-width:851px){
 .arslan-module-hero .hero-visual .hero-photo,
 .editor-styles-wrapper .arslan-module-hero .hero-visual .hero-photo {object-position:center}
}
@media(max-width:850px){
 .arslan-module-hero .hero-grid,
 .editor-styles-wrapper .arslan-module-hero .hero-grid {
   grid-template-columns:minmax(0,1fr);gap:24px;padding:38px 0;
 }
 .arslan-module-hero .hero-visual,
 .editor-styles-wrapper .arslan-module-hero .hero-visual {width:min(100%,var(--arslan-mobile-image-width,100%));margin-inline:auto}
 .arslan-module-hero .hero-visual .hero-photo,
 .editor-styles-wrapper .arslan-module-hero .hero-visual .hero-photo {width:100%;max-height:none}
}
/* Keep the existing horizontal-position control usable; crop within the visual area, never over the copy. */
@media(min-width:851px){
 .arslan-module-hero .hero-visual>picture,
 .editor-styles-wrapper .arslan-module-hero .hero-visual>picture {transform:translateX(clamp(-100px,var(--arslan-image-offset,0px),100px))}
 .arslan-module-hero .hero-visual>.hero-photo,
 .editor-styles-wrapper .arslan-module-hero .hero-visual>.hero-photo {transform:translateX(clamp(-100px,var(--arslan-image-offset,0px),100px))}
}
