.capacity-heading{margin-bottom:22px;text-align:center}.capacity-heading h2{margin-bottom:8px}.capacity-heading>p:last-child{margin:0;color:#685746;font-family:Georgia,"Times New Roman",serif;font-size:17px}.capacity-layout,.capacity-layout *{box-sizing:border-box}.capacity-layout{--green:#034d3d;--deep:#023c31;--gold:#d5a34c;--gold2:#f1ce78;--red:#9d201b;--cream:#fffaf0;width:min(1120px,100%);margin:0 auto;color:#173f35}.capacity-summary{position:relative;display:grid;grid-template-columns:repeat(4,1fr);min-height:92px;padding:6px;overflow:hidden;background:linear-gradient(145deg,#033c31,#075b47);border:2px solid var(--gold);box-shadow:0 5px 14px rgba(50,33,12,.18),inset 0 0 0 3px #07523f}.capacity-summary:before,.capacity-summary:after,.floor-card:before,.floor-card:after{content:"";position:absolute;width:17px;height:17px;pointer-events:none}.capacity-summary:before,.floor-card:before{top:8px;left:8px;border-top:1px solid var(--gold2);border-left:1px solid var(--gold2)}.capacity-summary:after,.floor-card:after{right:8px;bottom:8px;border-right:1px solid var(--gold2);border-bottom:1px solid var(--gold2)}.summary-item{display:flex;align-items:center;gap:14px;padding:9px 22px;border-right:1px solid rgba(241,206,120,.55)}.summary-item:last-child{border-right:0}.summary-icon{display:grid;place-items:center;width:47px;height:47px;flex:0 0 47px;color:var(--gold2);border:1px solid var(--gold2);border-radius:50%;font:35px/1 Georgia,serif}.summary-item p{margin:0}.summary-item strong{display:block;color:var(--gold2);font:700 35px/.9 Georgia,"Times New Roman",serif;white-space:nowrap}.summary-item strong small{font-size:14px;text-transform:uppercase}.summary-item b{display:block;margin-top:5px;color:#fff4d6;font:700 13px/1.2 Georgia,"Times New Roman",serif;text-transform:uppercase}.floor-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.floor-card{position:relative;display:grid;grid-template-columns:48% 52%;min-width:0;min-height:305px;overflow:hidden;background:rgba(255,250,240,.96);border:1px solid #d3a963;box-shadow:0 5px 14px rgba(55,36,14,.12)}.floor-photo{min-width:0;height:305px;overflow:hidden}.floor-photo img{display:block;width:100%;height:100%;object-fit:cover;cursor:zoom-in}.floor-copy{display:flex;min-width:0;padding:12px 14px 12px;flex-direction:column}.floor-copy h3{display:flex;align-items:center;justify-content:center;gap:12px;margin:0 0 8px;color:var(--green);font:700 27px/1 Georgia,"Times New Roman",serif;text-transform:uppercase}.floor-copy h3:before,.floor-copy h3:after{content:"";width:40px;height:1px;background:var(--gold)}.floor-copy h3 span{white-space:nowrap}.floor-capacity{display:flex;align-items:center;justify-content:center;gap:14px;min-height:57px;padding:6px 12px;color:var(--gold2);background:linear-gradient(145deg,var(--deep),var(--green));border:1px solid var(--gold);box-shadow:inset 0 0 0 2px #07523f}.floor-capacity strong{font:700 43px/.9 Georgia,"Times New Roman",serif}.floor-capacity span{color:#fff1cd;font:700 12px/1.25 Georgia,"Times New Roman",serif;text-transform:uppercase}.opening-note{margin:7px 0 0;padding:7px 5px;color:var(--red);background:#faedcf;border:1px solid #d8ae60;font-size:10px;font-weight:800;text-align:center;text-transform:uppercase}.planned-total{margin:7px 0 0;color:#4e4438;font-size:12px;font-weight:700;text-align:center;text-transform:uppercase}.floor-copy h4{margin:10px 0 6px;color:var(--green);font:700 17px/1.1 Georgia,"Times New Roman",serif;text-transform:uppercase}.room-tags{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.room-tags.four{grid-template-columns:repeat(4,1fr)}.room-tags span{padding:7px 3px;color:#4b3d2d;background:#fffaf0;border:1px solid #d5aa62;font-size:10px;font-weight:800;text-align:center;text-transform:uppercase}.large-room{margin:7px 0 0;padding:7px 4px;color:#fff8e6;background:var(--red);font-size:10px;font-weight:800;text-align:center;text-transform:uppercase}.floor-description{margin:16px 5px;color:#685746;font-size:12px;line-height:1.55}.floor-cta{display:flex;align-items:center;justify-content:center;gap:20px;width:100%;min-height:37px;margin-top:auto;color:#fff1cf;background:linear-gradient(145deg,var(--deep),var(--green));border:1px solid var(--gold);font:700 13px/1 Georgia,"Times New Roman",serif;text-transform:uppercase;cursor:pointer}.floor-cta span{color:var(--gold2);font-size:28px;line-height:.5}.floor-cta:hover{background:var(--red)}
@media(max-width:900px){.capacity-summary{grid-template-columns:1fr 1fr}.summary-item:nth-child(2){border-right:0}.summary-item:nth-child(-n+2){border-bottom:1px solid rgba(241,206,120,.55)}.floor-grid{grid-template-columns:1fr}.floor-card{grid-template-columns:44% 56%}.floor-photo{height:330px}}
@media(max-width:560px){.capacity-heading>p:last-child{font-size:14px}.summary-item{gap:8px;padding:10px 7px}.summary-icon{width:34px;height:34px;flex-basis:34px;font-size:24px}.summary-item strong{font-size:25px}.summary-item strong small{font-size:9px}.summary-item b{font-size:9px}.floor-card{grid-template-columns:1fr}.floor-photo{height:235px}.floor-copy{padding:15px}.floor-copy h3{font-size:25px}.room-tags.four{grid-template-columns:1fr 1fr}}

/* Khóa tỷ lệ cuối theo đúng ảnh mẫu; đặt cuối file để thắng CSS cũ. */
.capacity-section{padding:28px 0 18px!important;overflow:visible!important}
.capacity-heading{margin:0 auto 18px!important}
.capacity-heading .section-kicker{margin-bottom:9px!important;font-size:clamp(10px,.72vw,12px)!important;letter-spacing:.15em!important}
.capacity-heading h2{margin:0!important;font-size:clamp(32px,2.2vw,42px)!important;line-height:1.08!important;letter-spacing:0!important;word-spacing:0!important}
.capacity-heading h2:after{content:"";display:block;width:102px;height:13px;margin:7px auto 5px;background:linear-gradient(#d5a34c,#d5a34c) left 6px/42px 1px no-repeat,linear-gradient(#d5a34c,#d5a34c) right 6px/42px 1px no-repeat,radial-gradient(circle,#a31f1a 0 3px,transparent 3.5px) center/13px 13px no-repeat}
.capacity-heading>p:last-child{font-size:clamp(15px,1.08vw,19px)!important}
.capacity-layout{width:min(82vw,1560px)!important;max-width:none!important;margin:0 0 0 50%!important;transform:translateX(-50%)}
.capacity-summary{min-height:clamp(94px,7.5vw,120px)}
.summary-item{justify-content:center;gap:clamp(10px,1.1vw,20px);padding:9px clamp(12px,1.25vw,24px)}
.summary-icon{width:clamp(47px,4vw,65px);height:clamp(47px,4vw,65px);flex:0 0 clamp(47px,4vw,65px);font-size:0}
.summary-icon svg{display:block;width:68%;height:68%;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.summary-item strong{font-size:clamp(36px,3.2vw,54px)!important}
.summary-item strong small{font-size:clamp(11px,.9vw,16px)!important}
.summary-item b{font-size:clamp(11px,.92vw,16px)!important;white-space:nowrap}
.floor-grid{gap:clamp(14px,1.1vw,20px);margin-top:clamp(13px,1.1vw,20px)}
.floor-card{container-type:inline-size;grid-template-columns:48% 52%;min-height:0;aspect-ratio:1.65/1}
.floor-photo,.floor-photo img{height:100%;min-height:0}
.floor-copy{padding:2.4cqw 2.8cqw 2.1cqw}
.floor-copy h3{gap:2.1cqw;margin:0 0 1.6cqw!important;font-size:clamp(25px,5.1cqw,40px)!important;letter-spacing:0!important;word-spacing:0!important;white-space:nowrap}
.floor-copy h3:before,.floor-copy h3:after{width:8.2cqw}
.floor-copy h3 span{letter-spacing:0!important;word-spacing:0!important;white-space:nowrap}
.floor-capacity{gap:2.5cqw;min-height:11.2cqw;padding:1.2cqw 2.4cqw}
.floor-capacity strong{font-size:clamp(43px,8.8cqw,69px)!important}
.floor-capacity span{font-size:clamp(11px,2.35cqw,18px)!important}
.opening-note{margin:1.3cqw 0 0!important;padding:1.35cqw 1cqw!important;font-size:clamp(9px,1.85cqw,14px)!important;white-space:nowrap}
.planned-total{margin:1.4cqw 0 0!important;font-size:clamp(10px,2cqw,15px)!important}
.floor-copy h4{margin:2.1cqw 0 1.15cqw!important;font-size:clamp(16px,3.45cqw,26px)!important}
.room-tags{gap:1.2cqw}
.room-tags span{padding:1.45cqw .4cqw;font-size:clamp(9px,1.8cqw,14px)!important;white-space:nowrap}
.large-room{display:flex;align-items:center;justify-content:center;gap:1cqw;margin:1.35cqw 0 0!important;padding:1.2cqw .7cqw!important;font-size:clamp(9px,1.65cqw,13px)!important;white-space:nowrap}
.large-room svg{display:block;width:2.5cqw;height:2.5cqw;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.floor-description{margin:4.6cqw 1.2cqw 2cqw!important;font-size:clamp(11px,2.25cqw,17px)!important}
.floor-cta{min-height:7.4cqw;padding:1.3cqw;font-size:clamp(12px,2.55cqw,20px)!important}
.floor-cta span{font-size:clamp(24px,5cqw,38px)}
@media(max-width:900px){.capacity-layout{width:calc(100vw - 28px)!important}.floor-card{grid-template-columns:44% 56%;aspect-ratio:1.65/1}}
@media(max-width:560px){.summary-icon{width:34px;height:34px;flex-basis:34px}.floor-card{grid-template-columns:1fr;aspect-ratio:auto}.floor-photo,.floor-photo img{height:68vw;max-height:310px}.floor-copy{padding:15px}.floor-copy h3{font-size:27px!important}.floor-copy h3:before,.floor-copy h3:after{width:40px}.floor-capacity{min-height:62px;padding:7px 12px}.floor-capacity strong{font-size:46px!important}.floor-capacity span{font-size:12px!important}.opening-note,.planned-total,.room-tags span,.large-room{font-size:10px!important}.floor-copy h4{font-size:18px!important}.room-tags{gap:6px}.floor-description{margin:18px 5px!important;font-size:13px!important}.floor-cta{min-height:42px;padding:9px;font-size:14px!important}}

/* Bản sửa V3: đồng bộ chiều ngang, căn giữa mô tả và xử lý font tiếng Việt. */
.capacity-section>.container{overflow:visible!important}
.capacity-layout{
  width:100%!important;
  max-width:100%!important;
  margin:0 auto!important;
  transform:none!important;
}
.capacity-heading,
.capacity-heading .section-kicker,
.capacity-heading h2,
.capacity-heading>p:last-child{
  width:100%!important;
  max-width:none!important;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
}
.capacity-heading>p:last-child{
  display:block!important;
  padding:0!important;
  font-family:Arial,"Helvetica Neue",sans-serif!important;
  font-kerning:normal!important;
  font-variant-ligatures:none!important;
  letter-spacing:0!important;
  word-spacing:0!important;
}
.capacity-heading h2{
  font-family:Georgia,"Times New Roman",serif!important;
  font-kerning:normal!important;
  font-variant-ligatures:none!important;
  letter-spacing:0!important;
  word-spacing:0!important;
}
.capacity-layout h3,
.capacity-layout h4,
.capacity-layout strong,
.capacity-layout b,
.capacity-layout button{
  font-family:"Times New Roman",Times,serif!important;
  font-kerning:normal!important;
  font-variant-ligatures:none!important;
  text-rendering:optimizeLegibility;
}
.floor-copy h3,
.floor-copy h3 span,
.floor-cta{
  letter-spacing:0!important;
  word-spacing:0!important;
  text-transform:none!important;
}
.floor-copy h3 span{
  display:inline-block!important;
  white-space:nowrap!important;
}
@media(max-width:900px){
  .capacity-layout{width:100%!important;max-width:100%!important}
}

/* Bản sửa V4: hai nút tư vấn cùng vị trí và cùng kích thước. */
@media(min-width:561px){
  .floor-copy{
    position:relative!important;
    padding-bottom:62px!important;
  }
  .floor-cta{
    position:absolute!important;
    right:14px!important;
    bottom:12px!important;
    left:14px!important;
    width:auto!important;
    height:44px!important;
    min-height:44px!important;
    margin:0!important;
    padding:0 16px!important;
  }
}

/* Bản sửa V5: hai thẻ dùng chung chiều cao; hai nút dùng chung đường đáy. */
@media(min-width:901px){
  .floor-grid{
    align-items:stretch!important;
  }
  .floor-card{
    height:100%!important;
    min-height:0!important;
    aspect-ratio:auto!important;
  }
  .floor-photo,
  .floor-photo img{
    height:100%!important;
  }
  .floor-copy{
    position:static!important;
    height:100%!important;
    min-height:0!important;
    padding:2.4cqw 2.8cqw 2.1cqw!important;
  }
  .floor-cta{
    position:static!important;
    inset:auto!important;
    width:100%!important;
    height:44px!important;
    min-height:44px!important;
    margin:auto 0 0!important;
    padding:0 16px!important;
    flex:0 0 44px!important;
  }
}

/* Bản sửa V6: dải tiện ích Tầng 2 theo mẫu đã duyệt. */
.floor-amenities{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  min-height:70px;
  margin:0 0 12px;
  padding:8px 0;
  color:var(--green);
  background:linear-gradient(180deg,rgba(241,206,120,.08),rgba(241,206,120,.02));
  border-top:1px solid rgba(213,163,76,.8);
  border-bottom:1px solid rgba(213,163,76,.8);
}
.floor-amenity{
  position:relative;
  display:flex;
  min-width:0;
  padding:0 5px;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:5px;
  text-align:center;
}
.floor-amenity+.floor-amenity{
  border-left:1px solid rgba(213,163,76,.7);
}
.floor-amenity+.floor-amenity:before{
  content:"";
  position:absolute;
  top:50%;
  left:-3px;
  width:5px;
  height:5px;
  border-radius:50%;
  background:var(--red);
  transform:translateY(-50%);
  box-shadow:0 0 0 3px var(--cream);
}
.floor-amenity-icon{
  display:grid;
  width:34px;
  height:34px;
  place-items:center;
  color:var(--green);
}
.floor-amenity-icon svg{
  display:block;
  width:100%;
  height:100%;
  fill:none;
  stroke:currentColor;
  stroke-width:1.65;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.floor-amenity strong{
  display:block;
  color:var(--green);
  font:700 11px/1.1 "Times New Roman",Times,serif!important;
  text-transform:uppercase;
  white-space:nowrap;
}

@media(min-width:901px){
  .floor-two .floor-description{
    margin:2.5cqw 1.2cqw 1.6cqw!important;
  }
  .floor-two .floor-amenities{
    min-height:12.8cqw;
    margin-bottom:1.8cqw;
    padding:1.2cqw 0;
  }
  .floor-two .floor-amenity{
    gap:.75cqw;
    padding:0 .6cqw;
  }
  .floor-two .floor-amenity-icon{
    width:5.2cqw;
    height:5.2cqw;
  }
  .floor-two .floor-amenity strong{
    font-size:clamp(9px,1.55cqw,12px)!important;
  }
}

@media(max-width:560px){
  .floor-amenities{
    min-height:66px;
    margin:0 0 13px;
    padding:7px 0;
  }
  .floor-amenity{
    gap:4px;
    padding:0 3px;
  }
  .floor-amenity-icon{
    width:30px;
    height:30px;
  }
  .floor-amenity strong{
    font-size:9px!important;
    white-space:normal;
  }
}
