/*
Digital Yak V4 homepage section fidelity — sector / services / selected work.
Scoped to the editable Divi modules already on the homepage.
Matches reference services-layout + service-list and work-grid compositions.
*/
/* Never let the Divi Row module or nested columns limit the new grid widths. */
#page-container .dy-home-services .dy-services-grid.et_pb_row,
#page-container .dy-home-work .dy-work-grid.et_pb_row{
  box-sizing:border-box!important;
  width:calc(100% - 2 * var(--dy-v4-side,5vw))!important;
  max-width:1300px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
#page-container .dy-home-services.et_pb_section{padding:clamp(92px,9.4vw,142px) 0 clamp(88px,9vw,136px)!important;overflow:hidden!important;}
#page-container .dy-home-services .dy-services-grid{
  display:grid!important;
  grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr)!important;
  gap:clamp(65px,9vw,147px)!important;
  align-items:start!important;
}
#page-container .dy-home-services .dy-services-grid>.et_pb_column{
  box-sizing:border-box!important;
  float:none!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}
#page-container .dy-home-services .dy-services-grid>.et_pb_column:first-child{grid-column:1!important;}
#page-container .dy-home-services .dy-services-grid>.et_pb_column:last-child{
  grid-column:2!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:19px 33px!important;
  align-content:start!important;
  padding-top:22px!important;
}
#page-container .dy-home-services .dy-services-grid>.et_pb_column:last-child>.dy-services-copy{
  grid-column:1/-1!important;
  box-sizing:border-box!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0 0 19px!important;
  padding:0!important;
}
#page-container .dy-home-services .dy-services-intro-row{
  display:flex!important;
  gap:20px!important;
  justify-content:space-between!important;
  align-items:flex-start!important;
  width:100%!important;
  box-sizing:border-box!important;
}
#page-container .dy-home-services .dy-services-intro-row>p{
  max-width:370px!important;
  flex:1 1 auto!important;
  margin:0!important;
  color:#d9dcd8!important;
  font:400 16px/1.55 'DM Sans',sans-serif!important;
}
#page-container .dy-home-services .dy-services-intro-row>a{
  flex:0 0 auto!important;
  align-self:flex-start!important;
  color:#fff!important;
  font:750 11px/1.6 'DM Sans',sans-serif!important;
  padding-bottom:6px!important;
  border-bottom:1px solid #fff!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}
#page-container .dy-home-services .dy-services-intro-row>p:last-child{
  flex:0 0 auto!important;
  width:auto!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  white-space:nowrap!important;
}
#page-container .dy-home-services .dy-services-intro-row>p:last-child>a{
  display:inline-block!important;
  padding:0 0 6px!important;
  border-bottom:1px solid #f4f4ee!important;
  text-decoration:none!important;
  font:750 11px/1.6 'DM Sans',sans-serif!important;
  letter-spacing:0!important;
  color:#fff!important;
}
#page-container .dy-home-services .dy-services-intro-row>p:last-child>a:hover{color:#ee8a55!important;border-color:#ee8a55!important;}
#page-container .dy-home-services .dy-services-intro-row>p:last-child>a span{color:#ed7643!important;margin-left:8px!important;}
#page-container .dy-home-services .dy-services-intro-row>a span{margin-left:8px;color:#ed7643!important;}
#page-container .dy-home-services .dy-services-grid>.et_pb_column:last-child>.dy-service-mini.et_pb_text{
  grid-column:auto!important;
  grid-row:auto!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  float:none!important;
  box-sizing:border-box!important;
  padding:20px 0 12px!important;
  margin:0!important;
  border-top:1px solid #494e4b!important;
  display:block!important;
  min-height:113px!important;
  overflow:visible!important;
}
#page-container .dy-home-services .dy-service-mini>.et_pb_text_inner{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}
#page-container .dy-home-services .dy-service-mini>.et_pb_text_inner>a{
  display:grid!important;
  grid-template-columns:44px minmax(0,1fr) 14px!important;
  align-items:start!important;
  column-gap:13px!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  color:#fff!important;
  text-decoration:none!important;
}
#page-container .dy-home-services .dy-service-mini .dy-service-icon{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:43px!important;
  height:43px!important;
  border:1px solid #555d58!important;
  border-radius:50%!important;
  color:#ed7643!important;
  font-size:22px!important;
}
#page-container .dy-home-services .dy-service-mini .dy-service-info{
  display:block!important;
  min-width:0!important;
  width:100%!important;
}
#page-container .dy-home-services .dy-service-mini strong{
  display:block!important;
  font:750 13px/1.45 'DM Sans',sans-serif!important;
  letter-spacing:0!important;
  color:#fff!important;
  margin:0 0 7px!important;
  overflow-wrap:normal!important;
}
#page-container .dy-home-services .dy-service-mini small{
  display:block!important;
  color:#aeb7b0!important;
  font:400 11px/1.62 'DM Sans',sans-serif!important;
  letter-spacing:0!important;
  max-width:235px!important;
}
#page-container .dy-home-services .dy-service-mini .dy-service-arrow{font-size:15px!important;opacity:0!important;color:#ed7643!important;}
#page-container .dy-home-services .dy-service-mini:hover .dy-service-arrow,
#page-container .dy-home-services .dy-service-mini:focus-within .dy-service-arrow{opacity:1!important;}
#page-container .dy-home-services .dy-service-mini:hover{border-color:#ed7643!important;}
#page-container .dy-home-services .dy-services-heading h2{
  font-size:clamp(53px,5.55vw,84px)!important;
  line-height:1.055!important;
  letter-spacing:-.079em!important;
  margin:0!important;
}
#page-container .dy-home-services .dy-services-caption p{
  margin-top:55px!important;
  color:#aab0aa!important;
  font-size:10px!important;
  letter-spacing:.18em!important;
  line-height:1.5!important;
}
#page-container .dy-home-services.dy-orb-section:after{
  width:690px!important;height:690px!important;
  left:-390px!important;right:auto!important;
  bottom:-455px!important;opacity:.89!important;
}
/* Portfolio matches reference: 2 equally wide columns, 1 tall left image,
   2 right-side tiles, both images fully fill their column's width. */
#page-container .dy-home-work.et_pb_section{padding-top:clamp(85px,8.8vw,138px)!important;padding-bottom:clamp(75px,8vw,116px)!important;}
#page-container .dy-home-work .dy-section-header{margin-bottom:35px!important;}
#page-container .dy-home-work .dy-work-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:22px!important;
  align-items:start!important;
  padding:0!important;
}
#page-container .dy-home-work .dy-work-grid>.et_pb_column{
  min-width:0!important;
  max-width:none!important;
  float:none!important;
  width:100%!important;
  box-sizing:border-box!important;
  padding:0!important;
  margin:0!important;
}
#page-container .dy-home-work .dy-work-grid .et_pb_image.et_pb_module{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  border-radius:8px!important;
  line-height:0!important;
}
#page-container .dy-home-work .dy-work-grid .et_pb_image .et_pb_image_wrap{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
}
#page-container .dy-home-work .dy-work-grid .et_pb_image .et_pb_image_wrap img{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  min-width:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  height:225px!important;
  transition:transform .7s cubic-bezier(.19,1,.22,1)!important;
}
#page-container .dy-home-work .dy-work-grid>.et_pb_column:first-child .et_pb_image img{
  height:553px!important;
  object-position:center!important;
}
#page-container .dy-home-work .dy-work-grid>.et_pb_column:last-child .et_pb_image img{
  height:225px!important;
}
#page-container .dy-home-work .dy-work-grid .et_pb_image:hover img{transform:scale(1.035)!important;}
#page-container .dy-home-work .dy-work-grid .dy-kicker{
  margin:14px 0 7px!important;
  width:100%!important;
}
#page-container .dy-home-work .dy-work-grid .dy-kicker p{
  margin:0!important;
  font:750 10px/1.5 'DM Sans',sans-serif!important;
  color:#899088!important;
  letter-spacing:.13em!important;
}
#page-container .dy-home-work .dy-work-grid .dy-project-title{
  margin:0 0 21px!important;
  width:100%!important;
  max-width:none!important;
}
#page-container .dy-home-work .dy-work-grid .dy-project-title .et_pb_module_heading{
  margin:0!important;
  font-size:23px!important;
  line-height:1.24!important;
  font-weight:720!important;
  letter-spacing:-.045em!important;
  color:#171a19!important;
}
/* Graphic project tile, designed in native editable Divi Text module. */
#page-container .dy-home-work .dy-portfolio-graphic.et_pb_text{
  display:block!important;
  background:#f5e1d7!important;
  border-radius:8px!important;
  min-height:230px!important;
  height:230px!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  position:relative!important;
}
#page-container .dy-home-work .dy-portfolio-graphic .et_pb_text_inner{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:center!important;
  position:relative!important;
  width:100%!important;
  height:100%!important;
  padding:22px!important;
  box-sizing:border-box!important;
}
#page-container .dy-home-work .dy-portfolio-graphic .dy-graphic-eyebrow{
  position:absolute!important;
  top:18px!important;
  left:23px!important;
  font:700 10px/1.3 'DM Sans',sans-serif!important;
  color:#76716e!important;
  letter-spacing:.09em!important;
  margin:0!important;
}
#page-container .dy-home-work .dy-portfolio-graphic h3{
  font-family:Manrope,sans-serif!important;
  font-size:clamp(52px,5.2vw,80px)!important;
  line-height:.93!important;
  letter-spacing:-.1em!important;
  font-weight:850!important;
  color:#141515!important;
  text-align:center!important;
  margin:0!important;
  padding:0!important;
}
#page-container .dy-home-work .dy-portfolio-graphic h3 em{color:#ed7643!important;font-style:normal!important;}
#page-container .dy-home-work .dy-portfolio-graphic .dy-graphic-star{
  position:absolute!important;
  top:16px!important;
  right:14%!important;
  font:400 65px/1 'DM Sans',sans-serif!important;
  color:#ed7643!important;
  margin:0!important;
}
#page-container .dy-home-work .dy-work-grid>.et_pb_column:last-child .dy-project-title:last-child{margin-bottom:0!important;}
#page-container .dy-home-work .dy-work-footer{
  display:flex!important;
  gap:28px!important;
  align-items:center!important;
  justify-content:space-between!important;
  padding:20px 0 0!important;
  margin:12px 0 0!important;
  border-top:1px solid #d9dcd6!important;
  width:100%!important;
}
#page-container .dy-home-work .dy-work-footer span{
  color:#7c847c!important;
  font:400 12px/1.6 'DM Sans',sans-serif!important;
}
#page-container .dy-home-work .dy-work-footer a{
  flex:0 0 auto!important;
  color:#171a19!important;
  font:750 12px/1.4 'DM Sans',sans-serif!important;
  text-decoration:none!important;
  border-bottom:1px solid #171a19!important;
  padding:0 0 7px!important;
  white-space:nowrap!important;
}
#page-container .dy-home-work .dy-work-footer a b{color:#ed7643!important;margin-left:6px!important;}
#page-container .dy-home-work .dy-work-footer a:hover{color:#bc4c20!important;border-bottom-color:#bc4c20!important;}
/* Portrait aspect corrections also keep the other homepage images within natural columns. */
#page-container .dy-home-sector .dy-sector-row>.et_pb_column{min-width:0!important;}
#page-container .dy-home-sector .dy-sector-row .et_pb_image_wrap{display:block!important;width:100%!important;max-width:none!important;}
#page-container .dy-home-sector .dy-sector-row .et_pb_image_wrap img{display:block!important;width:100%!important;max-width:none!important;}
@media(max-width:1100px){
 #page-container .dy-home-services .dy-services-grid{grid-template-columns:minmax(0,.87fr) minmax(0,1.13fr)!important;gap:50px!important;}
 #page-container .dy-home-services .dy-services-intro-row{display:block!important;}
 #page-container .dy-home-services .dy-services-intro-row>a{display:inline-block!important;margin-top:15px!important;}
 #page-container .dy-home-services .dy-services-grid>.et_pb_column:last-child{gap:15px 20px!important;}
 #page-container .dy-home-services .dy-service-mini>.et_pb_text_inner>a{grid-template-columns:40px minmax(0,1fr) 12px!important;gap:10px!important;}
 #page-container .dy-home-services .dy-service-mini .dy-service-icon{width:39px!important;height:39px!important;}
 #page-container .dy-home-work .dy-work-grid>.et_pb_column:first-child .et_pb_image img{height:475px!important;}
 #page-container .dy-home-work .dy-work-grid>.et_pb_column:last-child .et_pb_image img{height:195px!important;}
 #page-container .dy-home-work .dy-portfolio-graphic.et_pb_text{height:195px!important;min-height:195px!important;}
}
@media(max-width:850px){
 #page-container .dy-home-services .dy-services-grid{display:block!important;}
 #page-container .dy-home-services .dy-services-grid>.et_pb_column{width:100%!important;margin:0!important;}
 #page-container .dy-home-services .dy-services-grid>.et_pb_column:last-child{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px 24px!important;padding-top:10px!important;}
 #page-container .dy-home-services .dy-services-grid>.et_pb_column:last-child>.dy-services-copy{grid-column:1/-1!important;}
 #page-container .dy-home-services .dy-services-caption p{margin:24px 0 38px!important;}
 #page-container .dy-home-services .dy-services-heading h2{font-size:clamp(53px,9vw,78px)!important;}
 #page-container .dy-home-work .dy-work-grid>.et_pb_column:first-child .et_pb_image img{height:460px!important;}
 #page-container .dy-home-work .dy-work-grid>.et_pb_column:last-child .et_pb_image img{height:194px!important;}
 #page-container .dy-home-work .dy-portfolio-graphic.et_pb_text{height:194px!important;min-height:194px!important;}
}
@media(max-width:650px){
 #page-container .dy-home-services .dy-services-grid>.et_pb_column:last-child{display:block!important;}
 #page-container .dy-home-services .dy-services-grid>.et_pb_column:last-child>.dy-service-mini.et_pb_text{width:100%!important;padding:18px 0!important;min-height:90px!important;}
 #page-container .dy-home-services .dy-service-mini strong{font-size:15px!important;}
 #page-container .dy-home-services .dy-service-mini small{font-size:12px!important;}
 #page-container .dy-home-services .dy-services-intro-row>p{font-size:15px!important;}
 #page-container .dy-home-services.dy-orb-section:after{left:auto!important;right:-430px!important;bottom:-580px!important;}
 #page-container .dy-home-work .dy-work-grid{display:block!important;}
 #page-container .dy-home-work .dy-work-grid>.et_pb_column{width:100%!important;margin:0 0 26px!important;}
 #page-container .dy-home-work .dy-work-grid .et_pb_image .et_pb_image_wrap img,
 #page-container .dy-home-work .dy-work-grid>.et_pb_column:first-child .et_pb_image img,
 #page-container .dy-home-work .dy-work-grid>.et_pb_column:last-child .et_pb_image img{height:310px!important;}
 #page-container .dy-home-work .dy-portfolio-graphic.et_pb_text{height:310px!important;min-height:310px!important;}
 #page-container .dy-home-work .dy-work-footer{display:block!important;}
 #page-container .dy-home-work .dy-work-footer a{display:inline-block!important;margin-top:14px!important;}
 #page-container .dy-home-work .dy-portfolio-graphic h3{font-size:clamp(55px,13vw,85px)!important;}
}
