/* WGRCMS-Step-0057 Subpages Layout Polish */
:root{
  --wgr-blue:#015da8;
  --wgr-dark:#09233b;
  --wgr-muted:#40556a;
  --wgr-line:#dbe8f0;
  --wgr-soft:#f4f9fd;
  --wgr-box:1180px;
}

/* Unterseiten allgemein */
.cms-page,
.apt-page,
.contact-page,
.downloads-page,
.page-wrap,
.subpage{
  background:#f4f9fd!important;
  min-height:60vh!important;
}

/* Hero/Banner für Unterseiten */
.cms-page-hero,
.subpage-hero,
.page-hero{
  background:
    linear-gradient(90deg,rgba(255,255,255,.98),rgba(255,255,255,.78)),
    linear-gradient(135deg,#eaf5fb,#dcebc8)!important;
  padding:54px max(28px,calc((100% - 1180px)/2)) 46px!important;
  border-bottom:1px solid #dbe8f0!important;
}

.cms-page-hero-inner,
.subpage-hero-inner,
.page-hero-inner{
  max-width:1180px!important;
  margin:0 auto!important;
  background:transparent!important;
  box-shadow:none!important;
  border:0!important;
  padding:0!important;
}

.cms-page-hero h1,
.subpage-hero h1,
.page-hero h1,
.cms-page h1,
.apt-page h1,
.contact-page h1,
.downloads-page h1{
  color:#015da8!important;
  font-size:42px!important;
  line-height:1.12!important;
  font-weight:900!important;
  margin:0 0 12px!important;
  letter-spacing:.01em!important;
}

.cms-page-hero p,
.subpage-hero p,
.page-hero p{
  color:#40556a!important;
  font-size:16px!important;
  line-height:1.6!important;
  max-width:720px!important;
  margin:0!important;
}

/* Content Container */
.cms-content,
.subpage-content,
.page-content,
.cms-content-box{
  max-width:1180px!important;
  margin:30px auto 54px!important;
  background:#fff!important;
  border:1px solid #dbe8f0!important;
  border-radius:10px!important;
  box-shadow:0 12px 34px rgba(9,35,59,.08)!important;
  padding:34px!important;
}

.cms-content h2,
.cms-content-box h2,
.page-content h2{
  color:#015da8!important;
  font-size:27px!important;
  line-height:1.22!important;
  font-weight:900!important;
  margin:0 0 16px!important;
}

.cms-content h3,
.cms-content-box h3,
.page-content h3{
  color:#09233b!important;
  font-size:21px!important;
  margin:24px 0 10px!important;
}

.cms-content p,
.cms-content-box p,
.page-content p{
  color:#40556a!important;
  font-size:16px!important;
  line-height:1.72!important;
  margin:0 0 16px!important;
}

.cms-content a,
.cms-content-box a,
.page-content a{
  color:#015da8!important;
  font-weight:800!important;
}

/* Wohnungen */
.apt-grid,
.apartments-grid,
.wohn-grid{
  max-width:1180px!important;
  margin:30px auto 54px!important;
  display:grid!important;
  grid-template-columns:repeat(3,1fr)!important;
  gap:20px!important;
}

.apt-card,
.apartment-card,
.wohn-card{
  background:#fff!important;
  border:1px solid #dbe8f0!important;
  border-radius:10px!important;
  overflow:hidden!important;
  box-shadow:0 10px 30px rgba(9,35,59,.07)!important;
  transition:transform .18s ease, box-shadow .18s ease!important;
}

.apt-card:hover,
.apartment-card:hover,
.wohn-card:hover{
  transform:translateY(-3px)!important;
  box-shadow:0 18px 42px rgba(9,35,59,.12)!important;
}

.apt-card img,
.apartment-card img,
.wohn-card img{
  width:100%!important;
  height:190px!important;
  object-fit:cover!important;
  display:block!important;
}

.apt-body,
.apartment-body,
.wohn-body{
  padding:22px!important;
}

.apt-body h3,
.apartment-body h3,
.wohn-body h3{
  color:#015da8!important;
  font-size:20px!important;
  line-height:1.25!important;
  margin:0 0 10px!important;
  font-weight:900!important;
}

.apt-meta,
.apartment-meta,
.wohn-meta{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin:0 0 14px!important;
}

.apt-meta span,
.apartment-meta span,
.wohn-meta span{
  background:#eef8fd!important;
  color:#015da8!important;
  border-radius:999px!important;
  padding:5px 9px!important;
  font-size:12px!important;
  font-weight:800!important;
}

/* Kontaktseite */
.contact-grid{
  max-width:1180px!important;
  margin:30px auto 54px!important;
  display:grid!important;
  grid-template-columns:.85fr 1.15fr!important;
  gap:22px!important;
}

.contact-info,
.contact-formbox{
  background:#fff!important;
  border:1px solid #dbe8f0!important;
  border-radius:10px!important;
  box-shadow:0 12px 34px rgba(9,35,59,.08)!important;
  padding:30px!important;
}

.contact-info h2,
.contact-formbox h2{
  color:#015da8!important;
  font-size:26px!important;
  line-height:1.2!important;
  margin:0 0 16px!important;
  font-weight:900!important;
}

.contact-info p{
  color:#40556a!important;
  line-height:1.65!important;
}

.contact-formbox label{
  color:#09233b!important;
  font-weight:800!important;
  margin-bottom:14px!important;
}

.contact-formbox input,
.contact-formbox textarea,
.contact-formbox select{
  width:100%!important;
  border:1px solid #dbe8f0!important;
  border-radius:7px!important;
  padding:12px!important;
  font:inherit!important;
  background:#fff!important;
}

.contact-formbox textarea{
  min-height:150px!important;
}

.contact-formbox button,
.contact-formbox .btn{
  background:#015da8!important;
  color:#fff!important;
  border-radius:5px!important;
  min-height:44px!important;
  padding:0 22px!important;
  font-weight:900!important;
}

/* Downloads */
.download-grid,
.downloads-grid{
  max-width:1180px!important;
  margin:30px auto 54px!important;
  display:grid!important;
  grid-template-columns:repeat(3,1fr)!important;
  gap:18px!important;
}

.download-card{
  background:#fff!important;
  border:1px solid #dbe8f0!important;
  border-radius:10px!important;
  padding:24px!important;
  box-shadow:0 10px 30px rgba(9,35,59,.07)!important;
  display:grid!important;
  grid-template-columns:48px 1fr!important;
  gap:16px!important;
  align-items:start!important;
}

.download-card::before{
  content:""!important;
  width:46px!important;
  height:46px!important;
  border-radius:10px!important;
  background:#eef8fd!important;
  grid-column:1!important;
  grid-row:1 / span 3!important;
}

.download-card::after{
  content:""!important;
  width:28px!important;
  height:28px!important;
  background:#015da8!important;
  position:absolute!important;
  margin:9px 0 0 9px!important;
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8l-6-6Zm-1 1.5L18.5 9H13V3.5ZM8 13h8v2H8v-2Zm0 4h8v2H8v-2Z'/%3E%3C/svg%3E")!important;
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8l-6-6Zm-1 1.5L18.5 9H13V3.5ZM8 13h8v2H8v-2Zm0 4h8v2H8v-2Z'/%3E%3C/svg%3E")!important;
  mask-size:contain!important;
  -webkit-mask-size:contain!important;
}

.download-card{
  position:relative!important;
}

.download-card h3{
  color:#015da8!important;
  font-size:18px!important;
  margin:0 0 8px!important;
  font-weight:900!important;
}

.download-card p{
  color:#40556a!important;
  font-size:14px!important;
  line-height:1.5!important;
  margin:0 0 14px!important;
}

.download-card a{
  color:#015da8!important;
  font-size:13px!important;
  font-weight:900!important;
  text-decoration:none!important;
}

.download-card a:hover{
  text-decoration:underline!important;
}

/* Mobile */
@media(max-width:1100px){
  .apt-grid,
  .apartments-grid,
  .wohn-grid,
  .download-grid,
  .downloads-grid{
    grid-template-columns:repeat(2,1fr)!important;
  }
}

@media(max-width:980px){
  .cms-page-hero,
  .subpage-hero,
  .page-hero{
    padding:42px 22px 36px!important;
  }

  .cms-content,
  .subpage-content,
  .page-content,
  .cms-content-box,
  .apt-grid,
  .apartments-grid,
  .wohn-grid,
  .contact-grid,
  .download-grid,
  .downloads-grid{
    margin-left:22px!important;
    margin-right:22px!important;
    max-width:none!important;
  }

  .apt-grid,
  .apartments-grid,
  .wohn-grid,
  .contact-grid,
  .download-grid,
  .downloads-grid{
    grid-template-columns:1fr!important;
  }

  .cms-page-hero h1,
  .subpage-hero h1,
  .page-hero h1,
  .cms-page h1,
  .apt-page h1,
  .contact-page h1,
  .downloads-page h1{
    font-size:34px!important;
  }
}
