/* DWS Designeo / Art Direction R1 — staging only, 2026-11-07.
 * Editorial composition; Gutenberg blocks and content remain unchanged.
 * Deliberately scoped to the Home to protect service/pricing pages. */
.dws-reconstruction-main .dws-home{
  --dws-editorial-ink:#151515;
  --dws-editorial-muted:#575651;
  --dws-editorial-accent:#f5411f;
  --dws-editorial-paper:#f6f6f3;
}
/* 1. Services: open editorial columns instead of repeated black-outline cards. */
.dws-reconstruction-main .dws-home .dws-node-1-0-0-2{
  gap:clamp(18px,3.1vw,44px)!important;
  align-items:stretch!important;
}
.dws-reconstruction-main .dws-home .dws-node-1-0-0-2 > .wp-block-group{
  border:0!important;border-radius:0!important;
  box-shadow:none!important;
  background:transparent!important;
  min-width:0!important;
  padding:clamp(17px,2.4vw,29px) 10px 8px 0!important;
  border-top:1px solid #bcbcb5!important;
  position:relative;
}
.dws-reconstruction-main .dws-home .dws-node-1-0-0-2 > .wp-block-group::before{
  content:"";position:absolute;left:0;top:-1px;height:2px;width:48px;
  background:var(--dws-editorial-accent);
}
.dws-reconstruction-main .dws-home .dws-node-1-0-0-2 > .wp-block-group :is(h3,h4){
  font-size:clamp(22px,2vw,29px)!important;line-height:1.18!important;
  letter-spacing:-.025em;
}
/* 2. Process: remove all square outlines, turn numbered steps into an open typographic sequence. */
.dws-reconstruction-main .dws-home .dws-node-4-0-0-3{
  gap:clamp(14px,2.1vw,30px)!important;
}
.dws-reconstruction-main .dws-home .dws-node-4-0-0-3 > .wp-block-group{
  min-width:0!important;background:transparent!important;
  border:0!important;border-radius:0!important;
  box-shadow:none!important;padding:18px 10px 10px 0!important;
  border-top:1px solid #c8c8c2!important;
}
.dws-reconstruction-main .dws-home .dws-node-4-0-0-3 > .wp-block-group > :first-child{
  font-size:clamp(38px,4.8vw,66px)!important;
  line-height:1!important;letter-spacing:-.065em!important;
  color:var(--dws-editorial-accent)!important;
}
/* 3. Why: compact open list as an intermediate improvement pending approved structure R1. */
.dws-reconstruction-main .dws-home .dws-node-5-0-0-2 > .wp-block-group{
  border:0!important;border-radius:0!important;
  box-shadow:none!important;background:transparent!important;
  padding:13px 8px 13px 0!important;
  border-bottom:1px solid #d4d4cf!important;
}
/* 4. Portfolio: larger imagery, deliberate 1+2 asymmetric gallery with no card boxes. */
@media(min-width:980px){
  .dws-reconstruction-main .dws-home .dws-node-6-0-0-2{
    display:grid!important;
    grid-template-columns:minmax(0,1.38fr) minmax(0,1fr)!important;
    grid-template-rows:repeat(2,minmax(0,1fr))!important;
    gap:clamp(20px,2.5vw,35px)!important;
    align-items:stretch!important;
  }
  .dws-reconstruction-main .dws-home .dws-node-6-0-0-2 > .wp-block-group:first-child{
    grid-row:span 2!important;
  }
}
.dws-reconstruction-main .dws-home .dws-node-6-0-0-2 > .wp-block-group{
  border:0!important;border-radius:0!important;box-shadow:none!important;
  background:transparent!important;padding:0!important;
  min-width:0!important;max-width:none!important;width:100%!important;
  box-sizing:border-box!important;gap:10px!important;
  justify-self:stretch!important;align-self:stretch!important;
  display:flex!important;flex-direction:column!important;
  align-items:flex-start!important;
}
.dws-reconstruction-main .dws-home .dws-node-6-0-0-2 > .wp-block-group .wp-block-image{
  order:-1;overflow:hidden!important;
  width:100%!important;max-width:none!important;
  margin:0 0 10px!important;
  background:#e3e3de;
  aspect-ratio:1.75;
}
@media(min-width:980px){
  .dws-reconstruction-main .dws-home .dws-node-6-0-0-2 > .wp-block-group:first-child .wp-block-image{
    aspect-ratio:1.04;
    flex:1 0 auto!important;
  }
}
.dws-reconstruction-main .dws-home .dws-node-6-0-0-2 .wp-block-image img{
  display:block!important;width:100%!important;height:100%!important;
  object-fit:cover!important;
}
.dws-reconstruction-main .dws-home .dws-node-6-0-0-2 > .wp-block-group :is(h3,h4){
  font-size:clamp(22px,2vw,30px)!important;
  line-height:1.15!important;
  letter-spacing:-.025em!important;
}
.dws-reconstruction-main .dws-home .dws-node-6-0-0-2 > .wp-block-group p{
  color:var(--dws-editorial-muted);
}
/* Packs remain the intentionally delineated commercial component, softer border. */
.dws-reconstruction-main .dws-home .dws-node-3-0-0-3 > .wp-block-group{
  border-color:#c9c9c5!important;
  border-width:1px!important;
  border-radius:4px!important;
}
.dws-reconstruction-main .dws-home .dws-node-3-0-0-3 > .wp-block-group:nth-child(2){
  border-color:#171717!important;
}
/* Responsive fallbacks: no horizontal overflow or accidental 2-column small layout. */
@media(max-width:979px){
  .dws-reconstruction-main .dws-home .dws-node-6-0-0-2{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:22px!important;
  }
  .dws-reconstruction-main .dws-home .dws-node-6-0-0-2 > .wp-block-group:first-child{
    grid-column:1/-1;
  }
  .dws-reconstruction-main .dws-home .dws-node-6-0-0-2 > .wp-block-group:first-child .wp-block-image{
    aspect-ratio:2.1;
  }
}
@media(max-width:630px){
  .dws-reconstruction-main .dws-home .dws-node-6-0-0-2{
    grid-template-columns:minmax(0,1fr)!important;
    gap:35px!important;
  }
  .dws-reconstruction-main .dws-home .dws-node-6-0-0-2 > .wp-block-group:first-child{grid-column:auto;}
  .dws-reconstruction-main .dws-home .dws-node-6-0-0-2 > .wp-block-group .wp-block-image,
  .dws-reconstruction-main .dws-home .dws-node-6-0-0-2 > .wp-block-group:first-child .wp-block-image{
    aspect-ratio:1.55;
  }
  .dws-reconstruction-main .dws-home .dws-node-4-0-0-3 > .wp-block-group{
    padding:18px 0 12px!important;
  }
}

/* Portfolio R1.1 — image integrity and understated captions.
   Screenshots and logos must NOT be cropped, stretched or zoomed. */
.dws-reconstruction-main .dws-home .dws-node-6-0-0-2{
  align-items:start!important;
}
.dws-reconstruction-main .dws-home .dws-node-6-0-0-2 > .wp-block-group{
  justify-content:flex-start!important;align-self:start!important;
  gap:5px!important;
}
.dws-reconstruction-main .dws-home .dws-node-6-0-0-2 > .wp-block-group .wp-block-image,
.dws-reconstruction-main .dws-home .dws-node-6-0-0-2 > .wp-block-group:first-child .wp-block-image{
  flex:0 0 auto!important;aspect-ratio:auto!important;
  height:auto!important;max-height:none!important;
  overflow:visible!important;background:transparent!important;
  margin:0 0 14px!important;
}
.dws-reconstruction-main .dws-home .dws-node-6-0-0-2 .wp-block-image img{
  width:100%!important;height:auto!important;
  max-height:none!important;object-fit:contain!important;
  transform:none!important;transition:none!important;
}
.dws-reconstruction-main .dws-home .dws-node-6-0-0-2 > .wp-block-group:hover .wp-block-image img{
  transform:none!important;
}
.dws-reconstruction-main .dws-home .dws-node-6-0-0-2 > .wp-block-group :is(h2,h3,h4){
  margin:0!important;font-size:clamp(16px,1.2vw,18px)!important;
  font-weight:600!important;letter-spacing:-.01em!important;line-height:1.3!important;
}
.dws-reconstruction-main .dws-home .dws-node-6-0-0-2 > .wp-block-group p{
  margin:0!important;font-size:12px!important;line-height:1.5!important;
  color:#777671!important;letter-spacing:.005em!important;
}
.dws-reconstruction-main .dws-home .dws-node-6-0-0-2 .dws-g-77ca36c{
  background:transparent!important;border:0!important;padding:0!important;
  font-size:10px!important;font-weight:500!important;color:#8f8e87!important;
  letter-spacing:.08em!important;text-transform:uppercase!important;
}
@media(min-width:980px){
  /* Let real image ratios define visual height; avoid artificial row stretching. */
  .dws-reconstruction-main .dws-home .dws-node-6-0-0-2{
    grid-template-rows:auto auto!important;
    align-items:start!important;
  }
}
