/* Astra — spa10 Bảng giá dựng Y HỆT mockup (quy trình mới 2026-09-27: mockup là bản vẽ chuẩn).
   Heading: Lora; chữ thân: Be Vietnam Pro (luật font); chữ viết tay: Dancing Script. */
@import url("https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@400;500;600&family=Dancing+Script:wght@500;600&family=Lora:ital,wght@0,500;0,600;0,700;1,500&display=swap");
:root { --pm-maroon:#5B1E14; --pm-brown:#7A4A26; --pm-dark:#4A2A17; --pm-gold:#C9A25E; --pm-gold2:#E7C987; --pm-cream:#FFFCF6; --pm-line:#EAD9B8; --pm-text:#4E4540; }

.pm-sec p, .pm-footer p, .pm-footer li { font-family: "Be Vietnam Pro", Arial, sans-serif; }
.pm-sec { position: relative; overflow: hidden; }
.pm-anchor { position: absolute; top: -100px; }
.pm-title { font-family: "Lora", Georgia, serif !important; font-weight: 600 !important; font-size: 42px !important; color: var(--pm-maroon) !important; margin: 0 0 4px !important; display: inline-flex; align-items: center; gap: 28px; text-transform: none; }
.pm-title::before, .pm-title::after { content: ""; width: 72px; height: 2px; background: linear-gradient(90deg, transparent, var(--pm-gold)); }
.pm-title::after { background: linear-gradient(90deg, var(--pm-gold), transparent); }
.pm-subtitle { color: #7b706a !important; font-size: 16px !important; margin: 0 0 26px !important; }

/* nút */
.pm-btn.button { font-family: "Be Vietnam Pro", Arial, sans-serif; text-transform: none !important; letter-spacing: 0 !important; font-weight: 500 !important; font-size: 15px !important; min-height: 44px; line-height: 42px; padding: 0 26px !important; }
.pm-btn-brown.button { background: linear-gradient(180deg,#9C6130,#6E3F1C) !important; border: 0 !important; color: #fff !important; box-shadow: 0 6px 16px rgba(110,63,28,.3); }
.pm-btn-gold.button { background: linear-gradient(180deg,#F1D494,#C99A45) !important; border: 0 !important; color: #3E2413 !important; box-shadow: 0 6px 16px rgba(0,0,0,.25); }
.pm-btn-line.button { background: transparent !important; border: 1.5px solid #8A5A34 !important; color: #5B3A20 !important; border-radius: 6px !important; }
.pm-btn-line.button:hover { background: #8A5A34 !important; color: #fff !important; }

/* banner */
.pm-hero .pm-hero-logo { margin: 0 auto 6px; }
.pm-hero .pm-hero-title { font-family: "Lora", Georgia, serif !important; font-weight: 600 !important; font-size: 76px !important; line-height: .98 !important; color: #6E3F1C !important; text-transform: uppercase; letter-spacing: -.01em; margin: 0 0 14px !important; }
.pm-hero .pm-hero-sub { color: #4E4540 !important; font-size: 17px !important; margin: 0 0 6px !important; }
.pm-hero .pm-crumb, .pm-hero .pm-crumb a { color: #8a7d72 !important; font-size: 13px !important; margin: 0 0 16px !important; }
.pm-hero-quote p { font-family: "Dancing Script", cursive !important; color: #7A4A26 !important; font-size: 30px !important; line-height: 1.25 !important; }
.pm-hero-quote p::after { content: ""; display: block; width: 60px; height: 1px; background: #8A5A34; margin: 10px 0 0 auto; }

/* thẻ nổi bật */
.pm-feature > .col-inner { border: 1px solid var(--pm-line); border-radius: 14px; background: #fff; padding: 16px 28px 16px 16px; box-shadow: 0 10px 30px rgba(122,74,38,.07); }
.pm-feature-img { position: relative; }
.pm-feature-img .img-inner { border-radius: 10px; }
.pm-badge { position: absolute; top: 14px; left: 26px; z-index: 3; background: linear-gradient(180deg,#E6C27A,#B4833D); color: #fff; font-family: "Be Vietnam Pro", Arial, sans-serif; font-size: 12px; font-weight: 600; text-transform: uppercase; padding: 4px 16px; border-radius: 99px; box-shadow: 0 3px 8px rgba(0,0,0,.15); }
.pm-feature-body { padding-left: 24px !important; }
.pm-feature-title { font-family: "Lora", Georgia, serif !important; font-size: 30px !important; color: var(--pm-maroon) !important; text-transform: uppercase; font-weight: 600 !important; margin: 0 0 6px !important; }
.pm-feature-sub { font-family: "Lora", Georgia, serif !important; color: #8A4A2B !important; font-size: 19px !important; margin: 0 0 10px !important; }
.pm-feature-desc { color: #7b706a !important; font-size: 15px !important; line-height: 1.6 !important; margin-bottom: 14px !important; }
.pm-table { width: 100%; border-collapse: collapse; margin: 0 !important; }
.pm-table td { border: 0; border-top: 1px solid var(--pm-line); padding: 12px 0; font-family: "Be Vietnam Pro", Arial, sans-serif; font-size: 17px; color: #3E2413; }
.pm-table td:last-child { text-align: right; color: #6E3F1C; font-weight: 500; }

/* 3 thẻ dịch vụ */
.pm-card { padding-top: 22px !important; }
.pm-card > .col-inner { position: relative; border: 1px solid var(--pm-line); border-radius: 14px; background: #FFFCF4; padding: 26px 28px 24px; text-align: center; height: 100%; }
.pm-card .pm-badge { top: 14px; left: 14px; }
.pm-card .pm-circle { margin: 0 auto 14px; }
.pm-card .pm-circle .img-inner { border-radius: 50%; border: 3px solid #fff; box-shadow: 0 0 0 2px #E2C58A, 0 10px 24px rgba(122,74,38,.12); }
.pm-card > .col-inner::after { content: ""; position: absolute; width: 70px; height: 110px; bottom: 70px; background: url(../../../uploads/2026/09/pr-leaves2-v1.png) center/contain no-repeat; opacity: .9; pointer-events: none; }
.pm-leaf-left > .col-inner::after { left: -8px; transform: scaleX(-1); }
.pm-leaf-right > .col-inner::after { right: -8px; bottom: 150px; }
.pm-card-title { font-family: "Lora", Georgia, serif !important; font-size: 25px !important; line-height: 1.2 !important; color: var(--pm-maroon) !important; text-transform: uppercase; font-weight: 600 !important; margin: 0 0 8px !important; }
.pm-card-desc { color: #6d625b !important; font-size: 15px !important; line-height: 1.55 !important; max-width: 300px; margin: 0 auto 14px !important; }
.pm-card-bar { background: #F7E8C9; color: #5B3A20 !important; border-radius: 6px; padding: 8px 10px; font-size: 15px !important; margin: 0 0 14px !important; }

/* CTA */
.pm-cta-title { font-family: "Dancing Script", cursive !important; color: #fff !important; font-size: 46px !important; line-height: 1.15 !important; margin: 0 0 10px !important; text-shadow: 0 2px 12px rgba(0,0,0,.35); }
.pm-cta-caps { color: rgba(255,255,255,.88) !important; font-size: 12.5px !important; text-transform: uppercase; letter-spacing: .02em; margin: 0 0 16px !important; }
.pm-cta-note p { font-family: "Dancing Script", cursive !important; color: rgba(255,255,255,.9) !important; font-size: 26px !important; line-height: 1.2 !important; transform: rotate(-6deg); }

/* chuyên gia */
.pm-portrait .img-inner { border-radius: 50% 50% 16px 16px / 38% 38% 16px 16px; box-shadow: 0 0 0 6px #fff, 0 0 0 8px #E2C58A; }
.pm-small { margin-bottom: 12px; }
.pm-small .img-inner { border-radius: 10px; box-shadow: 0 6px 16px rgba(0,0,0,.08); }
.pm-script { font-family: "Dancing Script", cursive !important; color: #7A4A26 !important; font-size: 26px !important; line-height: 1.25 !important; margin-top: 6px !important; }
.pm-eyebrow { color: #B4833D !important; font-size: 14px !important; margin: 0 0 6px !important; }
.pm-eyebrow::after { content: ""; display: block; width: 180px; height: 1px; background: #E2C58A; margin-top: 6px; }
.pm-expert-title { font-family: "Lora", Georgia, serif !important; font-size: 42px !important; color: var(--pm-maroon) !important; font-weight: 600 !important; margin: 0 0 6px !important; }
.pm-expert-sub { font-family: "Be Vietnam Pro", Arial, sans-serif; color: #4E4540 !important; font-size: 17px !important; }
.pm-expert-body p { color: #6d625b; font-size: 15px; line-height: 1.7; }
.pm-expert-body { background: url(../../../uploads/2026/09/pr-leaves2-v1.png) right bottom/170px auto no-repeat; }

/* form */
.pm-form { background-color: #FBF6EC; }
.pm-form-card > .col-inner { background: #fff; border: 1px solid var(--pm-line); border-radius: 14px; padding: 22px 26px 12px; box-shadow: 0 10px 30px rgba(122,74,38,.08); }
.pm-cf { display: grid; grid-template-columns: 1fr 1fr 190px; grid-template-areas: "a b ." "c d e"; gap: 12px 22px; align-items: end; text-align: left; }
.pm-cf .pm-cf-f:nth-child(1){grid-area:a}.pm-cf .pm-cf-f:nth-child(2){grid-area:b}.pm-cf .pm-cf-f:nth-child(3){grid-area:c}.pm-cf .pm-cf-f:nth-child(4){grid-area:d}.pm-cf .pm-cf-btn{grid-area:e}
.pm-cf label { display: block; font-size: 13.5px; color: #5B3A20; font-weight: 500; margin-bottom: 6px; }
.pm-cf label em { color: #C0392B; font-style: normal; }
.pm-cf input[type=text], .pm-cf input[type=tel], .pm-cf select, .pm-cf textarea { background: #FFF9EE !important; border: 1px solid #F0E2C6 !important; border-radius: 6px !important; box-shadow: none !important; height: 46px; margin: 0 !important; font-size: 14px; }
.pm-cf textarea { height: 66px; min-height: 66px; }
.pm-cf input[type=submit] { width: 100%; height: 50px; margin: 0 0 8px !important; background: linear-gradient(180deg,#8A4E24,#5E3217) !important; border: 0 !important; border-radius: 6px !important; color: #fff !important; font-size: 16px; text-transform: none; letter-spacing: 0; }
.pm-cf p { margin: 0 !important; }

/* footer mới */
.pm-footer { background-image: radial-gradient(ellipse at 20% 0%, rgba(255,255,255,.05), transparent 60%), linear-gradient(180deg,#4F2D18,#41250F) !important; }
.pm-footer p, .pm-footer li, .pm-footer a { color: rgba(255,240,220,.88) !important; font-size: 14.5px; }
.pm-foot-contact h3 { font-family: "Lora", Georgia, serif !important; color: #E7C987 !important; font-size: 20px !important; font-weight: 500 !important; margin-bottom: 10px !important; }
.pm-foot-contact ul { list-style: none; margin: 0 !important; }
.pm-foot-contact li { list-style: none; margin: 0 0 10px !important; padding-left: 30px; position: relative; }
.pm-foot-contact li::before { position: absolute; left: 0; top: 0; color: #E7C987; font-size: 16px; }
.pm-foot-contact .i-pin::before { content: "⌖"; } .pm-foot-contact .i-mail::before { content: "✉"; } .pm-foot-contact .i-phone::before { content: "☏"; }
.pm-social { display: flex; gap: 12px; margin-top: 12px; }
.pm-social a { width: 38px; height: 38px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; color: #fff !important; font-weight: 700; font-size: 15px; text-decoration: none; font-family: Arial, sans-serif; }
.pm-social .fb { background: #1877F2; } .pm-social .yt { background: #E62117; font-size: 12px; } .pm-social .ig { background: #3B6BC9; } .pm-social .zl { background: #0068FF; font-size: 11px; }
.pm-foot-bottom { border-top: 1px solid rgba(231,201,135,.35); margin-top: 22px !important; padding-top: 14px; }
.pm-foot-links { text-align: right; }
.pm-foot-links p a { padding: 0 12px; border-left: 1px solid rgba(231,201,135,.5); }
.pm-foot-links p a:first-child { border-left: 0; }
.pm-copy { font-size: 13px !important; opacity: .8; margin-top: 4px !important; }
.absolute-footer { display: none !important; }

@media (max-width: 849px) {
  .pm-title { font-size: 28px !important; gap: 12px; } .pm-title::before, .pm-title::after { width: 28px; }
  .pm-hero .pm-hero-title { font-size: 46px !important; }
  .pm-hero .pm-hero-sub { font-size: 14px !important; }
  .pm-feature > .col-inner { padding: 12px; } .pm-feature-body { padding-left: 0 !important; padding-top: 12px !important; }
  .pm-feature-title { font-size: 22px !important; } .pm-table td { font-size: 14.5px; }
  .pm-card-title { font-size: 21px !important; }
  .pm-cta-title { font-size: 32px !important; }
  .pm-expert-title { font-size: 30px !important; }
  .pm-cf { grid-template-columns: 1fr; grid-template-areas: "a" "b" "c" "d" "e"; }
  .pm-foot-links { text-align: left; } .pm-foot-links p a:first-child { padding-left: 0; }
}
/* m2: nhịp dọc theo mockup, reset style bảng của theme, logo banner */
.pm-table tr td, .pm-table tr:first-child td { background: transparent !important; color: #3E2413 !important; text-transform: none !important; font-weight: 400 !important; }
.pm-table tr td:last-child { color: #6E3F1C !important; font-weight: 500 !important; }
.pm-hero .pm-hero-logo { display: block !important; width: 96px !important; max-width: 96px !important; }
.pm-hero .pm-hero-logo img { filter: brightness(.55) sepia(.4); }
.pm-prices { padding-bottom: 30px !important; }
.pm-feature { padding-bottom: 10px !important; }
.pm-card > .col-inner { padding: 22px 24px 20px; }
.pm-expert { padding-top: 34px !important; padding-bottom: 20px !important; }
.pm-form { padding-top: 40px !important; padding-bottom: 44px !important; }
.pm-footer { padding-top: 34px !important; padding-bottom: 14px !important; }
.pm-footer .col { padding-bottom: 10px !important; }
.pm-foot-logo .img { max-width: 120px; margin: 0 auto; }
.pm-table tr, .pm-table tr:first-child, .pm-table tbody tr:first-child { background: transparent !important; }
.pm-table tr:first-child td { border-top: 1px solid var(--pm-line) !important; }
h2.pm-title { display: flex !important; justify-content: center; width: 100%; }
/* m4: theo số đo mockup_diff */
.pm-prices { padding-top: 34px !important; padding-bottom: 18px !important; }
.pm-subtitle { margin-bottom: 16px !important; }
.pm-feature > .col-inner { padding: 12px 26px 8px 12px; }
.pm-feature-title { font-size: 32px !important; } .pm-table td { padding: 9px 0; font-size: 18px; }
.pm-card { padding-top: 14px !important; padding-bottom: 0 !important; }
.pm-card > .col-inner { padding: 18px 26px 16px; }
.pm-card .pm-circle { margin-bottom: 8px; }
.pm-card-desc { margin-bottom: 10px !important; } .pm-card-bar { margin-bottom: 10px !important; padding: 6px 10px; }
.pm-expert .col { padding-bottom: 0 !important; }
.pm-expert-body { padding-top: 10px !important; }
.pm-script { font-size: 22px !important; margin: 0 !important; }
.pm-form .col { padding-bottom: 8px !important; }
.pm-form .pm-subtitle { margin-bottom: 12px !important; }
.pm-form-card > .col-inner { padding: 16px 22px 8px; }
.pm-foot-logo .img { max-width: 170px !important; }
.pm-foot-logo .img img { width: 170px; }
.pm-form { padding-top: 18px !important; padding-bottom: 20px !important; }
.pm-form .pm-title { font-size: 38px !important; }
.pm-cf { gap: 8px 22px; } .pm-cf textarea { height: 58px; min-height: 58px; }
.pm-cf input[type=text], .pm-cf input[type=tel], .pm-cf select { height: 42px; }
.pm-cta .pm-cta-note { margin-right: -60px; }
