@font-face{
font-family:"Lemon Milk";
src:url("https://cityhomebuilders.com.au/wp-content/uploads/2026/09/LEMONMILK-Light.ttf") format("truetype");
font-weight:300;font-style:normal;font-display:swap}
@font-face{
font-family:"Lemon Milk";
src:url("https://cityhomebuilders.com.au/wp-content/uploads/2026/09/LEMONMILK-Medium.ttf") format("truetype");
font-weight:500;font-style:normal;font-display:swap}

html.chb-project-modal-open,body.chb-project-modal-open{overflow:hidden!important}
.chb-project-showcase,.chb-project-showcase *{box-sizing:border-box;border-radius:0!important}

.chb-project-showcase{
--section-grey:#eef0f1;
--section-grey-dark:#d9dde0;
--text:#161a1d;
--muted:#6b7074;
background:var(--section-grey);
padding:92px 0 96px;
color:var(--text);
}

.chb-showcase-shell{
width:min(100%,1540px);
margin:0 auto;
padding:0 34px;
}

.chb-showcase-eyebrow{
display:inline-flex;
align-items:center;
gap:12px;
font-family:"Lemon Milk",Arial,sans-serif;
font-weight:300;
font-size:8px;
letter-spacing:.2em;
text-transform:uppercase;
color:var(--gold);
}
.chb-showcase-eyebrow:before{
content:"";
width:32px;
height:1px;
background:var(--gold);
}

.chb-library-head{
display:grid;
grid-template-columns:minmax(0,1.05fr) minmax(380px,.72fr);
gap:90px;
align-items:end;
margin-bottom:42px;
}

.chb-library-head h2,
.chb-featured-home h3,
.chb-library-card h3,
.chb-project-popup h3{
font-family:"Lemon Milk",Arial,sans-serif!important;
font-weight:500!important;
text-transform:uppercase!important;
letter-spacing:-.04em;
}

.chb-library-head h2{
font-size:clamp(48px,5vw,78px);
line-height:.94;
margin:15px 0 0;
max-width:820px;
}

.chb-library-head__right{
max-width:560px;
justify-self:end;
}

.chb-library-head__right p{
font-family:Arial,Helvetica,sans-serif;
font-size:16px;
line-height:1.7;
color:var(--muted);
margin:0 0 20px;
text-transform:none!important;
}

.chb-library-viewall{
display:inline-flex;
align-items:center;
gap:12px;
min-height:46px;
padding:0 18px;
background:#fff;
border:1px solid #dfe2e3;
color:#161a1d!important;
text-decoration:none!important;
font-family:"Lemon Milk",Arial,sans-serif;
font-weight:500;
font-size:8px;
letter-spacing:.08em;
text-transform:uppercase;
}
.chb-library-viewall svg{width:15px;height:15px}

/* FEATURED DESIGN */
.chb-featured-home{
display:grid;
grid-template-columns:minmax(0,1.5fr) minmax(380px,.72fr);
min-height:600px;
background:#fff;
border:1px solid #dfe2e3;
}

.chb-featured-home__media{
position:relative;
display:block;
width:100%;
min-height:600px;
border:0;
background:center/cover no-repeat;
cursor:pointer;
overflow:hidden;
}

.chb-featured-home__media:after{
content:"";
position:absolute;
inset:0;
background:linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.18));
}

.chb-featured-home__badge,
.chb-featured-home__quick{
position:absolute;
z-index:2;
top:18px;
font-family:"Lemon Milk",Arial,sans-serif;
font-weight:500;
font-size:7px;
letter-spacing:.09em;
text-transform:uppercase;
}

.chb-featured-home__badge{
left:18px;
padding:9px 11px;
background:var(--gold);
color:#111;
}

.chb-featured-home__quick{
right:18px;
display:inline-flex;
align-items:center;
gap:8px;
padding:9px 11px;
background:#fff;
color:#111;
}
.chb-featured-home__quick svg{width:14px;height:14px}

.chb-featured-home__content{
padding:48px 42px 40px;
display:flex;
flex-direction:column;
min-width:0;
}

.chb-featured-home__collection{
display:block;
font-family:"Lemon Milk",Arial,sans-serif;
font-weight:300;
font-size:8px;
letter-spacing:.16em;
text-transform:uppercase;
color:var(--gold);
margin-bottom:12px;
}

.chb-featured-home h3{
font-size:clamp(38px,4vw,60px);
line-height:.98;
margin:0;
}

.chb-featured-home__top p{
font-family:Arial,Helvetica,sans-serif;
font-size:15px;
line-height:1.72;
color:var(--muted);
margin:20px 0 0;
text-transform:none!important;
}

.chb-featured-home__specs{
display:grid;
grid-template-columns:repeat(2,1fr);
border-top:1px solid #e1e4e5;
margin-top:30px;
}

.chb-featured-home__specs div{
padding:15px 0;
border-bottom:1px solid #e1e4e5;
}
.chb-featured-home__specs div:nth-child(odd){padding-right:20px}

.chb-featured-home__specs small,
.chb-featured-home__price small{
display:block;
font-family:Arial,Helvetica,sans-serif;
font-size:10px;
color:#888d90;
}

.chb-featured-home__specs strong{
display:block;
font-family:"Lemon Milk",Arial,sans-serif;
font-size:18px;
font-weight:500;
margin-top:4px;
}

.chb-featured-home__dims{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:10px;
padding:20px 0;
border-bottom:1px solid #e1e4e5;
}

.chb-featured-home__dims span{
font-family:Arial,Helvetica,sans-serif;
font-size:10px;
line-height:1.3;
color:#858a8d;
}
.chb-featured-home__dims b{
display:block;
font-size:13px;
color:#161a1d;
margin-top:4px;
}

.chb-featured-home__footer{
margin-top:auto;
padding-top:26px;
display:flex;
align-items:end;
justify-content:space-between;
gap:20px;
}

.chb-featured-home__price strong{
display:block;
font-family:"Lemon Milk",Arial,sans-serif;
font-size:25px;
font-weight:500;
margin-top:4px;
}

.chb-featured-home__actions{
display:flex;
gap:8px;
flex-wrap:wrap;
}

.chb-featured-home__actions button,
.chb-featured-home__actions a{
min-height:46px;
padding:0 16px;
display:inline-flex;
align-items:center;
justify-content:center;
font-family:"Lemon Milk",Arial,sans-serif;
font-weight:500;
font-size:7px;
letter-spacing:.08em;
text-transform:uppercase;
text-decoration:none!important;
cursor:pointer;
}

.chb-featured-home__actions button{
border:1px solid #d3d7d8;
background:#fff;
color:#111;
}

.chb-featured-home__actions a{
border:0;
background:#161a1d;
color:#fff!important;
}

/* MORE DESIGNS */
.chb-library-subhead{
display:flex;
align-items:center;
justify-content:space-between;
gap:20px;
margin:42px 0 16px;
padding-bottom:12px;
border-bottom:1px solid #d6dadc;
}

.chb-library-subhead span:first-child{
font-family:"Lemon Milk",Arial,sans-serif;
font-weight:500;
font-size:15px;
text-transform:uppercase;
}

.chb-library-subhead span:last-child{
font-family:"Lemon Milk",Arial,sans-serif;
font-weight:300;
font-size:7px;
letter-spacing:.12em;
text-transform:uppercase;
color:#8b9093;
}

.chb-library-grid{
display:grid;
grid-template-columns:repeat(3,minmax(0,1fr));
gap:14px;
}

.chb-library-card{
background:#fff;
border:1px solid #dfe2e3;
overflow:hidden;
}

.chb-library-card__media{
position:relative;
display:block;
width:100%;
height:270px;
border:0;
background:center/cover no-repeat;
cursor:pointer;
}

.chb-library-card__media:after{
content:"";
position:absolute;
inset:0;
background:linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.14));
}

.chb-library-card__media span{
position:absolute;
right:12px;
top:12px;
z-index:2;
padding:8px 9px;
background:#fff;
font-family:"Lemon Milk",Arial,sans-serif;
font-weight:500;
font-size:6px;
letter-spacing:.08em;
text-transform:uppercase;
}

.chb-library-card__body{
padding:18px 18px 20px;
}

.chb-library-card__body>span{
font-family:"Lemon Milk",Arial,sans-serif;
font-weight:300;
font-size:7px;
letter-spacing:.14em;
text-transform:uppercase;
color:var(--gold);
}

.chb-library-card h3{
font-size:24px;
line-height:1;
margin:8px 0 14px;
}

.chb-library-card__meta{
display:flex;
flex-wrap:wrap;
gap:8px 14px;
padding:12px 0 14px;
border-top:1px solid #e2e5e6;
border-bottom:1px solid #e2e5e6;
}

.chb-library-card__meta span{
font-family:Arial,Helvetica,sans-serif;
font-size:11px;
color:#676c6f;
}

.chb-library-card__body>a{
display:inline-flex;
margin-top:16px;
font-family:"Lemon Milk",Arial,sans-serif;
font-weight:500;
font-size:7px;
letter-spacing:.08em;
text-transform:uppercase;
color:#111!important;
text-decoration:none!important;
}

/* POPUP — stable viewport portal */
.chb-project-popup{display:none;position:fixed;inset:0;z-index:999999;padding:24px}
.chb-project-popup.is-open{display:flex;align-items:center;justify-content:center}
.chb-project-popup__backdrop{position:absolute;inset:0;background:rgba(10,12,14,.82);backdrop-filter:blur(7px)}
.chb-project-popup__panel{
position:relative;
z-index:2;
width:min(1160px,calc(100vw - 48px));
height:min(660px,calc(100vh - 48px));
display:grid;
grid-template-columns:minmax(0,1.12fr) minmax(390px,.88fr);
background:#fff;
overflow:hidden;
box-shadow:0 32px 100px rgba(0,0,0,.38)
}
.chb-project-popup__media{min-width:0;background:#e9e9e6}
.chb-project-popup__main{width:100%;height:100%;background:center/cover no-repeat}
.chb-project-popup__content{
min-width:0;
height:100%;
padding:58px 46px 42px;
overflow-y:auto;
display:flex;
flex-direction:column;
justify-content:center;
background:#fff
}
.chb-project-popup__header{padding-right:54px}
.chb-project-popup h3{font-size:clamp(36px,3.5vw,54px);line-height:.98;margin:12px 0 0}
.chb-project-popup__content>p{
font-family:Arial,Helvetica,sans-serif;
font-size:15px;
line-height:1.7;
color:#60605c;
margin:20px 0 0;
text-transform:none!important
}
.chb-project-popup__stats{
display:grid;
grid-template-columns:1fr 1fr;
border-top:1px solid #e0e0da;
margin-top:24px
}
.chb-project-popup__stats div{padding:13px 0;border-bottom:1px solid #e0e0da}
.chb-project-popup__stats div:nth-child(odd){padding-right:14px}
.chb-project-popup__stats small{display:block;font-size:10px;color:#7a7a75}
.chb-project-popup__stats strong{display:block;font-family:"Lemon Milk",Arial,sans-serif;font-size:15px;margin-top:4px}
.chb-project-popup__price{margin-top:22px}
.chb-project-popup__price small{display:block;font-size:10px;color:#777}
.chb-project-popup__price strong{display:block;font-family:"Lemon Milk",Arial,sans-serif;font-size:24px;margin-top:3px}
.chb-project-popup__actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}
.chb-project-popup__actions a{
min-height:48px;
padding:0 18px;
display:inline-flex;
align-items:center;
justify-content:center;
text-decoration:none!important;
font-family:"Lemon Milk",Arial,sans-serif;
font-weight:500;
font-size:8px;
letter-spacing:.08em;
text-transform:uppercase
}
.chb-popup-primary{background:var(--gold);color:#111!important}
.chb-popup-secondary{border:1px solid #cfcfc8;color:#111!important}

/* close X */
.chb-project-popup__close{
position:absolute;
top:18px;
right:18px;
width:44px;
height:44px;
padding:0;
border:0;
background:#161a1d;
cursor:pointer;
z-index:20
}
.chb-project-popup__close:before,
.chb-project-popup__close:after{
content:"";
position:absolute;
left:50%;
top:50%;
width:18px;
height:1.5px;
background:#fff;
transform-origin:center
}
.chb-project-popup__close:before{transform:translate(-50%,-50%) rotate(45deg)}
.chb-project-popup__close:after{transform:translate(-50%,-50%) rotate(-45deg)}
.chb-project-popup__close:hover{background:var(--gold)}

@media(max-width:1050px){
.chb-library-head{grid-template-columns:1fr;gap:24px}
.chb-library-head__right{justify-self:start}
.chb-featured-home{grid-template-columns:1fr}
.chb-featured-home__media{min-height:480px}
.chb-library-grid{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:700px){
.chb-project-showcase{padding:60px 0}
.chb-showcase-shell{padding:0 12px}
.chb-library-head{margin-bottom:28px}
.chb-library-head h2{font-size:38px}
.chb-library-head__right p{font-size:14px}
.chb-featured-home{display:grid;grid-template-columns:1fr}
.chb-featured-home__media{min-height:320px}
.chb-featured-home__content{padding:26px 18px 22px}
.chb-featured-home h3{font-size:34px}
.chb-featured-home__footer{align-items:flex-start;flex-direction:column}
.chb-featured-home__actions{width:100%;display:grid;grid-template-columns:1fr 1fr}
.chb-library-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.chb-library-card__media{height:180px}
.chb-library-card__body{padding:12px 10px 14px}
.chb-library-card h3{font-size:16px}
.chb-library-card__meta{gap:5px 8px}
.chb-library-card__meta span{font-size:9px}
.chb-project-popup{padding:0}
.chb-project-popup__panel{
width:100vw;
height:100vh;
grid-template-columns:1fr;
grid-template-rows:40vh minmax(0,1fr)
}
.chb-project-popup__content{padding:28px 18px 34px;justify-content:flex-start}
.chb-project-popup h3{font-size:32px}
.chb-project-popup__actions{display:grid;grid-template-columns:1fr 1fr}
.chb-project-popup__close{top:14px;right:14px}
}


/* =========================================================
   v1.4.1 — MOBILE PROPORTION FIX
   Featured card is intentionally reduced and supporting cards
   become wider, shorter and less "skinny".
   ========================================================= */
@media(max-width:700px){

  .chb-project-showcase{
    padding:48px 0 54px;
  }

  /* FEATURED PROJECT — compact instead of towering */
  .chb-featured-home{
    display:block;
    min-height:0;
  }

  .chb-featured-home__media{
    min-height:0;
    height:235px;
  }

  .chb-featured-home__content{
    padding:20px 16px 18px;
  }

  .chb-featured-home__collection{
    font-size:6px;
    margin-bottom:7px;
  }

  .chb-featured-home h3{
    font-size:26px;
    line-height:1;
  }

  .chb-featured-home__top p{
    font-size:12px;
    line-height:1.55;
    margin-top:12px;
  }

  .chb-featured-home__specs{
    grid-template-columns:repeat(4,minmax(0,1fr));
    margin-top:18px;
  }

  .chb-featured-home__specs div{
    padding:10px 5px 10px 0;
  }

  .chb-featured-home__specs small{
    font-size:7px;
  }

  .chb-featured-home__specs strong{
    font-size:13px;
    margin-top:3px;
  }

  .chb-featured-home__dims{
    grid-template-columns:repeat(3,minmax(0,1fr));
    padding:12px 0;
    gap:6px;
  }

  .chb-featured-home__dims span{
    font-size:8px;
  }

  .chb-featured-home__dims b{
    font-size:10px;
    margin-top:2px;
  }

  .chb-featured-home__footer{
    padding-top:16px;
    gap:14px;
  }

  .chb-featured-home__price strong{
    font-size:20px;
  }

  .chb-featured-home__actions{
    grid-template-columns:1fr 1fr;
    gap:6px;
  }

  .chb-featured-home__actions button,
  .chb-featured-home__actions a{
    min-height:42px;
    padding:0 8px;
    font-size:6px;
  }

  /* MORE DESIGNS — use full width cards on phones */
  .chb-library-subhead{
    margin-top:30px;
  }

  .chb-library-grid{
    grid-template-columns:1fr;
    gap:12px;
  }

  .chb-library-card{
    display:grid;
    grid-template-columns:42% 58%;
    min-height:190px;
  }

  .chb-library-card__media{
    height:100%;
    min-height:190px;
  }

  .chb-library-card__body{
    padding:16px 14px;
    display:flex;
    flex-direction:column;
    justify-content:center;
  }

  .chb-library-card__body>span{
    font-size:6px;
  }

  .chb-library-card h3{
    font-size:20px;
    margin:7px 0 11px;
  }

  .chb-library-card__meta{
    gap:5px 8px;
    padding:9px 0 10px;
  }

  .chb-library-card__meta span{
    font-size:9px;
  }

  .chb-library-card__body>a{
    margin-top:11px;
    font-size:6px;
  }

  .chb-library-card__media span{
    right:8px;
    top:8px;
    padding:6px 7px;
    font-size:5px;
  }
}

/* Very narrow phones: keep the support card balanced */
@media(max-width:430px){
  .chb-library-card{
    grid-template-columns:46% 54%;
  }

  .chb-featured-home__specs{
    grid-template-columns:repeat(2,1fr);
  }

  .chb-featured-home__dims{
    grid-template-columns:repeat(3,1fr);
  }
}


/* =========================================================
   v1.4.2 — MOBILE INTRO / HEADING REFINEMENT
   ========================================================= */
@media(max-width:700px){

  .chb-library-head{
    gap:16px;
    margin-bottom:24px;
  }

  .chb-library-head > div:first-child{
    max-width:100%;
  }

  .chb-showcase-eyebrow{
    font-size:6px;
    letter-spacing:.18em;
    margin-bottom:9px;
  }

  .chb-showcase-eyebrow:before{
    width:22px;
  }

  .chb-library-head h2{
    max-width:340px;
    font-size:34px;
    line-height:.96;
    letter-spacing:-.035em;
    margin-top:8px;
  }

  .chb-library-head__right{
    max-width:345px;
  }

  .chb-library-head__right p{
    max-width:330px;
    font-size:12px;
    line-height:1.6;
    margin-bottom:16px;
    color:#646a6e;
  }

  .chb-library-viewall{
    min-height:40px;
    padding:0 14px;
    font-size:6px;
    letter-spacing:.07em;
  }

  .chb-library-viewall svg{
    width:13px;
    height:13px;
  }
}

/* Extra-small phones: prevent awkward 3-line title wrapping */
@media(max-width:390px){
  .chb-library-head h2{
    max-width:315px;
    font-size:31px;
  }

  .chb-library-head__right p{
    max-width:310px;
    font-size:11.5px;
  }
}


/* =========================================================
   v1.4.3 — MOBILE TITLE WRAP FIX
   Keep original heading size, only improve wrapping/layout.
   ========================================================= */
@media(max-width:700px){

  .chb-library-head{
    gap:18px;
    margin-bottom:24px;
  }

  .chb-library-head > div:first-child{
    max-width:100%;
  }

  .chb-library-head h2{
    font-size:38px;
    line-height:.94;
    letter-spacing:-.04em;
    margin-top:10px;
    margin-bottom:0;
    max-width:none;
    width:min(100%, 370px);
    text-wrap:balance;
    word-break:normal;
    overflow-wrap:normal;
  }

  .chb-library-head__right{
    max-width:100%;
  }

  .chb-library-head__right p{
    max-width:340px;
    font-size:14px;
    line-height:1.6;
    margin-bottom:18px;
  }
}

@media(max-width:390px){
  .chb-library-head h2{
    width:min(100%, 352px);
  }
}


/* =========================================================
   v1.4.4 — SUPPORTING CARD QUICK VIEW BADGE FIX
   Theme button styles were making the badge text inherit white.
   ========================================================= */
.chb-library-card__media{
  color:#111315!important;
}

.chb-library-card__media span{
  color:#111315!important;
  opacity:1!important;
  visibility:visible!important;
  white-space:nowrap!important;
  line-height:1!important;
  text-shadow:none!important;
  -webkit-text-fill-color:#111315!important;
}

.chb-library-card__media:hover span{
  background:#A89345!important;
  color:#111315!important;
  -webkit-text-fill-color:#111315!important;
}

/* =========================================================
   v1.4.5 — MOBILE POPUP EXPERIENCE UPGRADE
   Make the mobile popup feel like a polished full-screen experience:
   - the whole popup scrolls as one surface
   - image becomes a framed hero instead of being jammed to the top
   - content sits in an elevated card that overlaps the image slightly
   - close button stays fixed and easy to hit
   ========================================================= */
@media(max-width:700px){

  .chb-project-popup{
    padding:0;
  }

  .chb-project-popup.is-open{
    align-items:stretch;
    justify-content:stretch;
  }

  .chb-project-popup__backdrop{
    background:rgba(8,10,12,.76);
    backdrop-filter:blur(10px);
  }

  .chb-project-popup__panel{
    width:100vw;
    height:100vh;
    display:block;
    overflow-y:auto;
    background:var(--section-grey);
    box-shadow:none;
    position:relative;
    -webkit-overflow-scrolling:touch;
  }

  .chb-project-popup__media{
    min-width:0;
    background:transparent;
    padding:16px 16px 0;
  }

  .chb-project-popup__main{
    width:100%;
    height:min(38vh, 320px);
    min-height:250px;
    border:1px solid #dfe2e3;
    background-position:center center;
  }

  .chb-project-popup__content{
    min-width:0;
    height:auto;
    overflow:visible;
    display:block;
    justify-content:flex-start;
    background:#fff;
    border:1px solid #dfe2e3;
    margin:-26px 16px 18px;
    padding:24px 18px calc(22px + env(safe-area-inset-bottom));
    box-shadow:0 18px 46px rgba(0,0,0,.08);
  }

  .chb-project-popup__header{
    padding-right:44px;
  }

  .chb-project-popup h3{
    font-size:34px;
    line-height:.96;
    margin-top:10px;
  }

  .chb-project-popup__content > p{
    font-size:14px;
    line-height:1.65;
    margin-top:14px;
  }

  .chb-project-popup__stats{
    margin-top:20px;
  }

  .chb-project-popup__stats div{
    padding:12px 0;
  }

  .chb-project-popup__stats small,
  .chb-project-popup__price small{
    font-size:9px;
  }

  .chb-project-popup__stats strong{
    font-size:14px;
    margin-top:3px;
  }

  .chb-project-popup__price{
    margin-top:18px;
  }

  .chb-project-popup__price strong{
    font-size:22px;
  }

  .chb-project-popup__actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
    margin-top:22px;
  }

  .chb-project-popup__actions a{
    min-height:46px;
    padding:0 10px;
    font-size:7px;
  }

  .chb-project-popup__close{
    position:fixed;
    top:max(12px, env(safe-area-inset-top));
    right:max(12px, env(safe-area-inset-right));
    width:42px;
    height:42px;
    box-shadow:0 10px 24px rgba(0,0,0,.18);
  }
}

@media(max-width:430px){
  .chb-project-popup__media{
    padding:14px 14px 0;
  }

  .chb-project-popup__main{
    height:min(35vh, 290px);
    min-height:220px;
  }

  .chb-project-popup__content{
    margin:-22px 14px 16px;
    padding:22px 16px calc(20px + env(safe-area-inset-bottom));
  }

  .chb-project-popup h3{
    font-size:29px;
  }

  .chb-project-popup__actions{
    grid-template-columns:1fr 1fr;
  }

  .chb-project-popup__actions a{
    min-height:44px;
    font-size:6px;
    letter-spacing:.07em;
  }
}

/* =========================================================
   v1.4.7 — MOBILE POPUP NOW MATCHES THE FULL-SCREEN EXPERIENCE
   from the build-path section, while keeping this plugin's own
   stats/content layout.
   ========================================================= */
@media(max-width:700px){
  .chb-project-popup{
    padding:0!important;
  }

  .chb-project-popup.is-open{
    align-items:stretch!important;
    justify-content:stretch!important;
  }

  .chb-project-popup__backdrop{
    background:rgba(8,10,11,.76)!important;
    backdrop-filter:blur(7px)!important;
  }

  .chb-project-popup__panel{
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    max-height:none!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-rows:38vh minmax(0,1fr)!important;
    background:#fff!important;
    overflow:hidden!important;
    box-shadow:none!important;
    transform:none!important;
    left:auto!important;
    top:auto!important;
  }

  .chb-project-popup__media{
    min-width:0!important;
    padding:0!important;
    background:#e9e9e6!important;
  }

  .chb-project-popup__main{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    border:0!important;
    background-position:center center!important;
    background-size:cover!important;
    background-repeat:no-repeat!important;
  }

  .chb-project-popup__content{
    min-width:0!important;
    height:100%!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    margin:0!important;
    padding:26px 18px 34px!important;
    background:#fff!important;
    border:0!important;
    box-shadow:none!important;
    display:block!important;
    justify-content:flex-start!important;
    -webkit-overflow-scrolling:touch;
  }

  .chb-project-popup__header{
    padding-right:48px!important;
  }

  .chb-project-popup h3{
    font-size:32px!important;
    line-height:1!important;
    margin:10px 0 0!important;
  }

  .chb-project-popup__content > p{
    font-size:14px!important;
    line-height:1.65!important;
    margin:14px 0 0!important;
  }

  .chb-project-popup__stats{
    margin-top:18px!important;
  }

  .chb-project-popup__stats div{
    padding:12px 0!important;
  }

  .chb-project-popup__price{
    margin-top:18px!important;
  }

  .chb-project-popup__price strong{
    font-size:22px!important;
  }

  .chb-project-popup__actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
    margin-top:22px!important;
  }

  .chb-project-popup__actions a{
    min-height:46px!important;
    padding:0 12px!important;
    font-size:7px!important;
  }

  .chb-project-popup__close{
    position:absolute!important;
    top:14px!important;
    right:14px!important;
    width:42px!important;
    height:42px!important;
    z-index:30!important;
  }
}

@media(max-width:430px){
  .chb-project-popup__panel{
    grid-template-rows:34vh minmax(0,1fr)!important;
  }

  .chb-project-popup__content{
    padding:24px 18px calc(22px + env(safe-area-inset-bottom))!important;
  }

  .chb-project-popup h3{
    font-size:29px!important;
  }

  .chb-project-popup__actions a{
    min-height:44px!important;
    font-size:6px!important;
  }
}


/* v1.4.8 — preserve popup inline hero image on mobile */
@media(max-width:700px){
  .chb-project-popup__main{
    background-position:center center!important;
    background-size:cover!important;
    background-repeat:no-repeat!important;
  }
}


/* =========================================================
   v1.5.0 — POPUP HERO CAROUSEL UPGRADE
   Desktop + mobile popups now support multiple gallery images
   with swipe, arrows, dots and slide count.
   ========================================================= */
.chb-project-popup__media{
  position:relative;
  overflow:hidden;
}

.chb-project-popup__main{
  position:relative;
  overflow:hidden;
}

.chb-project-popup__carousel{
  isolation:isolate;
}

.chb-project-popup__slide{
  position:absolute;
  inset:0;
  background-position:center center;
  background-size:cover;
  background-repeat:no-repeat;
  opacity:0;
  transition:opacity .32s ease, transform .45s ease;
  transform:scale(1.02);
}

.chb-project-popup__slide.is-active{
  opacity:1;
  transform:scale(1);
}

.chb-project-popup__slide::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(8,10,12,.04), rgba(8,10,12,.14));
}

.chb-project-popup__count,
.chb-project-popup__dots,
.chb-project-popup__nav{
  position:absolute;
  z-index:4;
}

.chb-project-popup__count{
  top:20px;
  left:20px;
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 11px;
  background:rgba(17,19,21,.72);
  backdrop-filter:blur(7px);
  color:#fff;
  font-family:"Lemon Milk",Arial,sans-serif;
  font-size:7px;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.chb-project-popup__dots{
  left:20px;
  bottom:20px;
  display:flex;
  align-items:center;
  gap:8px;
}

.chb-project-popup__dots button{
  width:10px;
  height:10px;
  padding:0;
  border:0;
  background:rgba(255,255,255,.42);
  cursor:pointer;
}

.chb-project-popup__dots button.is-active{
  background:#fff;
  transform:scale(1.08);
}

.chb-project-popup__nav{
  right:20px;
  bottom:20px;
  display:flex;
  gap:8px;
}

.chb-project-popup__arrow{
  width:46px;
  height:46px;
  padding:0;
  border:0;
  background:rgba(255,255,255,.92);
  color:#111315;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  box-shadow:0 10px 24px rgba(0,0,0,.16);
}

.chb-project-popup__arrow svg{
  width:18px;
  height:18px;
}

.chb-project-popup__arrow:hover{
  background:var(--gold);
}

@media(max-width:700px){
  .chb-project-popup__count{
    top:14px;
    left:14px;
    min-height:28px;
    padding:0 10px;
    font-size:6px;
  }

  .chb-project-popup__dots{
    left:14px;
    bottom:14px;
    gap:7px;
  }

  .chb-project-popup__dots button{
    width:9px;
    height:9px;
  }

  .chb-project-popup__nav{
    right:14px;
    bottom:14px;
  }

  .chb-project-popup__arrow{
    width:42px;
    height:42px;
  }
}

@media(max-width:430px){
  .chb-project-popup__count{
    top:12px;
    left:12px;
  }

  .chb-project-popup__dots{
    left:12px;
    bottom:12px;
  }

  .chb-project-popup__nav{
    right:12px;
    bottom:12px;
  }

  .chb-project-popup__arrow{
    width:40px;
    height:40px;
  }
}
