/* Yunusov Team — namuna saytlar (kafe, o'quv markazi, kiyim do'koni, sartaroshxona, klinika, avtoservis, qurilish mollari). Har biri o'z uslubida. */
@font-face { font-family: "Onest"; src: url("../fonts/onest.woff") format("woff"); font-weight: 400 700; font-display: swap; }
@font-face { font-family: "Fraunces"; src: url("../fonts/fraunces.woff") format("woff"); font-weight: 600; font-display: swap; }
@font-face { font-family: "Sora"; src: url("../fonts/sora.woff") format("woff"); font-weight: 700; font-display: swap; }
@font-face { font-family: "Bodoni Moda"; src: url("../fonts/bodoni.woff") format("woff"); font-weight: 500; font-display: swap; }

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 64px; -webkit-text-size-adjust: 100%; }
body.nm { margin: 0; font: 400 17px/1.6 "Onest", system-ui, sans-serif; overflow-x: hidden; }
.nm h1, .nm h2, .nm h3 { margin: 0; text-wrap: balance; overflow-wrap: break-word; }
.nm p { margin: 0 0 .8em; }
.nm a { color: inherit; }
.nm :focus-visible { outline: 3px solid #f4b521; outline-offset: 2px; }
svg { display: block; max-width: 100%; }

/* Yunusov Team tasmasi — «bu namuna» ekanini doim ko'rsatadi */
.nm-bar { position: sticky; top: 0; z-index: 20; display: flex; flex-wrap: wrap; gap: 6px 16px; align-items: center; justify-content: center; padding: 8px 16px; background: #17153a; color: #fff; font-size: 14px; text-align: center; }
.nm-bar p { margin: 0; }
.nm-bar a { color: #17153a; background: #f4b521; padding: 5px 12px; border-radius: 999px; font-weight: 600; text-decoration: none; white-space: nowrap; }
.nm-foot { padding: 28px 16px 36px; text-align: center; font-size: 14px; background: #17153a; color: #c9cae3; }
.nm-foot p { margin: 4px 0; }
.nm-foot a { color: #fff; }

.nm-form { display: grid; gap: 12px; }
.nm-form label { display: flex; flex-direction: column; gap: 6px; font-weight: 600; font-size: 15px; }
.nm-form input, .nm-form select { min-height: 48px; padding: 10px 14px; border-radius: 10px; border: 1.5px solid #cfcfd6; font: inherit; font-weight: 400; background: #fff; color: #111; }
.nm-form-note { margin: 4px 0 0; padding: 12px 14px; border-radius: 10px; background: #fff4dc; color: #6b4300; font-weight: 500; }
@media (min-width: 720px) { .nm-form { grid-template-columns: 1fr 1fr; } .nm-form button, .nm-form-note { grid-column: 1 / -1; justify-self: start; } .nm-form-note { justify-self: stretch; } }

/* ---------------- Kafe: «Bodom kafe» — zaytun yashil va xantal */
.nm-kafe { background: #fbf8f2; color: #1e3a2b; }
.k-top { display: flex; flex-wrap: wrap; gap: 10px 24px; align-items: center; justify-content: space-between; max-width: 1120px; margin: 0 auto; padding: 18px 20px; }
.k-logo { font: 600 28px/1 "Fraunces", Georgia, serif; text-decoration: none; }
.k-logo span { color: #c88a0e; margin-left: 4px; font-style: italic; }
.k-top nav { display: flex; gap: 18px; flex-wrap: wrap; font-weight: 600; }
.k-top nav a { text-decoration: none; }
.k-hero { max-width: 1120px; margin: 0 auto; padding: 24px 20px 64px; display: flex; flex-wrap: wrap; gap: 32px; align-items: center; }
.k-hero-text { flex: 1 1 460px; min-width: 0; }
.k-kicker { color: #8a6a1c; font-weight: 600; }
.k-hero h1 { font: 600 clamp(2.1rem, 5vw, 3.6rem)/1.08 "Fraunces", Georgia, serif; margin-bottom: 18px; }
.k-hero p { font-size: 1.1rem; max-width: 52ch; }
.k-plate { flex: 0 1 320px; margin: 0 auto; }
.k-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 22px; }
.k-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 50px; padding: 12px 24px; border-radius: 999px; border: 2px solid #1e3a2b; background: #1e3a2b; color: #fff !important; font: 600 1rem/1 "Onest", sans-serif; text-decoration: none; cursor: pointer; }
.k-btn-ghost { background: transparent; color: #1e3a2b !important; }
.k-sec { max-width: 1120px; margin: 0 auto; padding: 56px 20px; }
.k-sec h2 { font: 600 clamp(1.8rem, 4vw, 2.6rem)/1.1 "Fraunces", Georgia, serif; margin-bottom: 24px; }
.k-menu { display: grid; gap: 14px; }
@media (min-width: 720px) { .k-menu { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1000px) { .k-menu { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.k-menu article { padding: 20px 22px; border-radius: 18px; background: #fff; border: 1px solid #eadfcb; display: flex; flex-direction: column; }
.k-menu h3 { font: 600 1.3rem/1.2 "Fraunces", Georgia, serif; margin-bottom: 6px; }
.k-menu p { color: #4c5e52; flex: 1; }
.k-menu b { color: #a36f07; font-size: 1.1rem; }
.k-note { margin-top: 18px; font-weight: 600; }
.k-band { display: grid; gap: 24px; background: #1e3a2b; color: #fff; border-radius: 28px; padding: 40px 28px; margin-bottom: 40px; }
.k-band h2 { color: #fff; }
.k-band label { color: #fff; }
.k-band .k-btn { background: #e3a41c; border-color: #e3a41c; color: #1e3a2b !important; }
@media (min-width: 900px) { .k-band { grid-template-columns: .8fr 1.2fr; padding: 48px; } }
.k-contacts { display: grid; gap: 18px; padding-top: 0; }
@media (min-width: 720px) { .k-contacts { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.k-contacts h3 { font: 600 1.2rem/1.2 "Fraunces", Georgia, serif; margin-bottom: 4px; }

/* ---------------- O'quv markazi: «Ilm Ziyo» — yorqin ko'k va sariq */
.nm-oquv-markazi { background: #fff; color: #0e1b3d; }
.o-top { display: flex; flex-wrap: wrap; gap: 10px 24px; align-items: center; justify-content: space-between; max-width: 1120px; margin: 0 auto; padding: 18px 20px; }
.o-logo { display: flex; align-items: center; gap: 10px; font: 700 22px/1 "Sora", sans-serif; text-decoration: none; }
.o-logo span { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; background: #1e5bff; color: #ffd23f; font-size: 15px; }
.o-top nav { display: flex; gap: 18px; flex-wrap: wrap; font-weight: 600; }
.o-top nav a { text-decoration: none; }
.o-hero { max-width: 1120px; margin: 0 auto; padding: 40px 20px 64px; }
.o-hero h1 { font: 700 clamp(2rem, 5vw, 3.5rem)/1.08 "Sora", sans-serif; letter-spacing: -.02em; max-width: 18ch; margin-bottom: 16px; }
.o-hero > p { font-size: 1.15rem; color: #3b4870; max-width: 50ch; }
.o-actions { display: flex; flex-wrap: wrap; gap: 14px 22px; align-items: center; margin: 24px 0 36px; }
.o-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 52px; padding: 12px 24px; border: 0; border-radius: 14px; background: #1e5bff; color: #fff !important; font: 700 1rem/1 "Sora", sans-serif; text-decoration: none; cursor: pointer; }
.o-link { font-weight: 700; color: #1e5bff !important; }
.o-facts { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 12px; }
.o-facts li { padding: 14px 18px; border-radius: 16px; background: #f1f5ff; color: #3b4870; }
.o-facts b { display: block; font: 700 1.6rem/1.1 "Sora", sans-serif; color: #1e5bff; }
.o-sec { max-width: 1120px; margin: 0 auto; padding: 48px 20px; }
.o-sec h2 { font: 700 clamp(1.7rem, 3.6vw, 2.4rem)/1.15 "Sora", sans-serif; margin-bottom: 24px; }
.o-courses { display: grid; gap: 14px; }
@media (min-width: 720px) { .o-courses { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1000px) { .o-courses { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.o-c { padding: 22px; border-radius: 20px; display: flex; flex-direction: column; }
.o-c h3 { font: 700 1.2rem/1.2 "Sora", sans-serif; margin-bottom: 8px; }
.o-c p { color: #3b4870; }
.o-c b { margin-top: auto; font-size: 1.1rem; }
.o-meta { font-size: .92rem; }
.o-c1 { background: #ffd23f; } .o-c1 p, .o-c1 .o-meta { color: #4a3b00; }
.o-c2 { background: #e7eeff; }
.o-c3 { background: #0e1b3d; color: #fff; } .o-c3 p { color: #c5cff0; }
.o-c4 { background: #e9f8ef; }
.o-table { overflow-x: auto; border-radius: 16px; border: 1px solid #dbe3f7; }
.o-table table { width: 100%; border-collapse: collapse; min-width: 480px; }
.o-table th, .o-table td { padding: 14px 16px; text-align: left; border-bottom: 1px solid #e7ecf8; }
.o-table th { background: #f1f5ff; font-weight: 700; }
.o-trial { display: grid; gap: 24px; background: #1e5bff; color: #fff; border-radius: 28px; padding: 40px 28px; margin-bottom: 40px; }
.o-trial p { color: #dbe5ff; }
.o-trial label { color: #fff; }
.o-trial .o-btn { background: #ffd23f; color: #0e1b3d !important; }
@media (min-width: 900px) { .o-trial { grid-template-columns: .8fr 1.2fr; padding: 48px; } }

/* ---------------- Kiyim do'koni: «Atlas Moda» — oq-qora va pushti */
.nm-kiyim-dokoni { background: #fff; color: #111; }
.m-top { display: grid; grid-template-columns: 1fr auto 1fr; gap: 12px; align-items: center; max-width: 1200px; margin: 0 auto; padding: 18px 20px; border-bottom: 1px solid #111; }
.m-top nav { display: flex; gap: 18px; flex-wrap: wrap; font-size: 14px; text-transform: uppercase; letter-spacing: .08em; }
.m-top nav:last-child { justify-content: flex-end; }
.m-top nav a { text-decoration: none; display: inline-block; padding: 6px 0; }
.m-logo { font: 500 26px/1 "Bodoni Moda", Georgia, serif; letter-spacing: .14em; text-decoration: none; text-align: center; }
@media (max-width: 640px) { .m-top { grid-template-columns: 1fr; text-align: center; } .m-top nav, .m-top nav:last-child { justify-content: center; } }
.m-hero { padding: clamp(56px, 10vw, 120px) 20px; text-align: center; background: #f3d9d4; }
.m-kicker { text-transform: uppercase; letter-spacing: .2em; font-size: 13px; }
.m-hero h1 { font: 500 clamp(2.4rem, 7vw, 5rem)/1.02 "Bodoni Moda", Georgia, serif; max-width: 14ch; margin: 10px auto 28px; }
.m-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 52px; padding: 12px 30px; border: 1.5px solid #111; border-radius: 0; background: #111; color: #fff !important; font: 600 14px/1 "Onest", sans-serif; text-transform: uppercase; letter-spacing: .12em; text-decoration: none; cursor: pointer; }
.m-sec { max-width: 1200px; margin: 0 auto; padding: 56px 20px; }
.m-grid { display: grid; gap: 28px 20px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (min-width: 900px) { .m-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.m-img { aspect-ratio: 5 / 6; overflow: hidden; margin-bottom: 12px; }
.m-grid h3 { font: 500 1.15rem/1.2 "Bodoni Moda", Georgia, serif; margin-bottom: 2px; }
.m-grid p { margin: 0; color: #555; }
.m-sizes { margin-top: 28px; text-align: center; }
.m-info { display: grid; gap: 22px; border-top: 1px solid #111; border-bottom: 1px solid #111; }
@media (min-width: 720px) { .m-info { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.m-info h3 { font: 500 1.3rem/1.2 "Bodoni Moda", Georgia, serif; margin-bottom: 6px; }
.m-order { max-width: 760px; }
.m-order h2 { font: 500 clamp(1.8rem, 4vw, 2.6rem)/1.1 "Bodoni Moda", Georgia, serif; margin-bottom: 22px; text-align: center; }
.m-order .nm-form input { border-radius: 0; border-color: #111; }
.m-contacts { margin-top: 24px; text-align: center; color: #444; }

@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

/* umumiy: tugma va tanlov tugmalari uchun bosish maydoni kamida 44px */
.nm button { font: inherit; }

/* ---------------- Sartaroshxona: «Usta Barber» — ko'mir qora va mis */
.nm-sartaroshxona { background: #151413; color: #f2ede6; }
.b-top { display: flex; flex-wrap: wrap; gap: 10px 24px; align-items: center; justify-content: space-between; max-width: 1120px; margin: 0 auto; padding: 18px 20px; }
.b-logo { font: 700 24px/1 "Sora", sans-serif; letter-spacing: .12em; text-decoration: none; }
.b-logo span { margin-left: 6px; color: #d08a4e; font: 500 22px/1 "Bodoni Moda", Georgia, serif; letter-spacing: .04em; font-style: italic; }
.b-top nav { display: flex; gap: 18px; flex-wrap: wrap; font-size: 15px; letter-spacing: .06em; text-transform: uppercase; }
.b-top nav a { text-decoration: none; display: inline-block; padding: 6px 0; }
.b-hero { max-width: 1120px; margin: 0 auto; padding: 56px 20px 72px; border-bottom: 1px solid #2c2926; }
.b-kicker { color: #d08a4e; letter-spacing: .08em; text-transform: uppercase; font-size: 14px; }
.b-hero h1 { font: 700 clamp(2.2rem, 6vw, 4.2rem)/1.04 "Sora", sans-serif; letter-spacing: -.02em; max-width: 16ch; margin: 8px 0 18px; }
.b-hero > p { font-size: 1.1rem; color: #c8bfb4; max-width: 50ch; }
.b-actions { display: flex; flex-wrap: wrap; gap: 14px 24px; align-items: center; margin-top: 26px; }
.b-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 52px; padding: 12px 26px; border: 0; border-radius: 4px; background: #d08a4e; color: #151413 !important; font: 700 1rem/1 "Sora", sans-serif; letter-spacing: .04em; text-decoration: none; cursor: pointer; }
.b-link { color: #f2ede6 !important; font-weight: 600; }
.b-sec { max-width: 1120px; margin: 0 auto; padding: 56px 20px; }
.b-sec h2 { font: 700 clamp(1.7rem, 3.8vw, 2.5rem)/1.15 "Sora", sans-serif; margin-bottom: 24px; }
.b-price { list-style: none; margin: 0; padding: 0; max-width: 720px; }
.b-price li { display: flex; align-items: baseline; gap: 10px; padding: 12px 0; font-size: 1.08rem; }
.b-price i { flex: 1; min-width: 20px; border-bottom: 1px dotted #5a524a; transform: translateY(-4px); }
.b-price b { color: #e3a06a; white-space: nowrap; }
.b-note { margin-top: 16px; color: #c8bfb4; }
.b-team { display: grid; gap: 14px; }
@media (min-width: 720px) { .b-team { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.b-team article { padding: 24px; border: 1px solid #2c2926; border-radius: 8px; background: #1c1a19; }
.b-ava { display: grid; place-items: center; width: 64px; height: 64px; margin-bottom: 14px; border-radius: 50%; background: #2c2926; color: #e3a06a; font: 700 18px/1 "Sora", sans-serif; }
.b-team h3 { font: 700 1.2rem/1.2 "Sora", sans-serif; margin-bottom: 4px; }
.b-team p { color: #c8bfb4; margin: 0; }
.b-book { background: #1c1a19; border: 1px solid #2c2926; border-radius: 12px; margin-bottom: 40px; padding: 40px 24px; }
@media (min-width: 900px) { .b-book { padding: 48px; } }
.b-step { margin-bottom: 22px; }
.b-step h3 { font: 700 1rem/1.2 "Sora", sans-serif; letter-spacing: .06em; text-transform: uppercase; color: #c8bfb4; margin-bottom: 10px; }
.b-chips, .b-slots { display: flex; flex-wrap: wrap; gap: 10px; }
.b-chips button, .b-slots button { min-height: 44px; min-width: 64px; padding: 8px 18px; border-radius: 4px; border: 1.5px solid #4a443e; background: transparent; color: #f2ede6; cursor: pointer; font-weight: 600; }
.b-chips button[aria-pressed="true"], .b-slots button[aria-pressed="true"] { background: #d08a4e; border-color: #d08a4e; color: #151413; }
.b-slots button:disabled { opacity: .45; text-decoration: line-through; cursor: not-allowed; }
.b-hint { margin: 10px 0 0; color: #a59c91; font-size: 14px; }
.b-summary { margin: 4px 0 20px; padding: 14px 16px; border-radius: 6px; background: #151413; color: #c8bfb4; }
.b-summary b { color: #e3a06a; }
.b-book .nm-form label { color: #f2ede6; }
.b-contacts { display: grid; gap: 18px; padding-top: 0; }
@media (min-width: 720px) { .b-contacts { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.b-contacts h3 { font: 700 1.05rem/1.2 "Sora", sans-serif; margin-bottom: 4px; color: #e3a06a; }
.b-contacts p { color: #c8bfb4; }

/* ---------------- Klinika: «Oq Tabassum» — oq va moviy-yashil (toza, ishonchli) */
.nm-klinika { background: #f6fbfb; color: #0f2e33; }
.c-top { display: flex; flex-wrap: wrap; gap: 10px 24px; align-items: center; justify-content: space-between; max-width: 1120px; margin: 0 auto; padding: 18px 20px; }
.c-logo { display: flex; align-items: center; gap: 10px; font: 700 22px/1 "Onest", sans-serif; text-decoration: none; }
.c-logo span { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; background: #0e7c7b; color: #fff; font-size: 26px; line-height: 1; }
.c-top nav { display: flex; gap: 18px; flex-wrap: wrap; font-weight: 600; }
.c-top nav a { text-decoration: none; display: inline-block; padding: 6px 0; }
.c-hero { max-width: 1120px; margin: 0 auto; padding: 36px 20px 64px; display: grid; gap: 28px; align-items: end; }
@media (min-width: 900px) { .c-hero { grid-template-columns: 1.4fr .6fr; } }
.c-kicker { color: #0e7c7b; font-weight: 700; }
.c-hero h1 { font: 700 clamp(2.1rem, 5vw, 3.6rem)/1.08 "Onest", sans-serif; letter-spacing: -.02em; max-width: 17ch; margin-bottom: 16px; }
.c-hero-text > p { font-size: 1.12rem; color: #3d5c61; max-width: 52ch; }
.c-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }
.c-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 52px; padding: 12px 24px; border: 2px solid #0e7c7b; border-radius: 999px; background: #0e7c7b; color: #fff !important; font: 700 1rem/1 "Onest", sans-serif; text-decoration: none; cursor: pointer; }
.c-btn-ghost { background: transparent; color: #0e7c7b !important; }
.c-trust { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.c-trust li { padding: 14px 18px; border-radius: 16px; background: #fff; border: 1px solid #d3e9e8; color: #3d5c61; }
.c-trust b { display: block; color: #0e7c7b; font-size: 1.3rem; }
.c-sec { max-width: 1120px; margin: 0 auto; padding: 52px 20px; }
.c-sec h2 { font: 700 clamp(1.7rem, 3.6vw, 2.4rem)/1.15 "Onest", sans-serif; margin-bottom: 24px; }
.c-cards { display: grid; gap: 14px; }
@media (min-width: 720px) { .c-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1000px) { .c-cards { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.c-cards article { display: flex; flex-direction: column; padding: 22px; border-radius: 20px; background: #fff; border: 1px solid #d3e9e8; }
.c-cards h3 { font: 700 1.15rem/1.25 "Onest", sans-serif; margin-bottom: 8px; }
.c-cards p { color: #3d5c61; flex: 1; }
.c-cards b { color: #0e7c7b; }
.c-docs { background: #e6f4f3; border-radius: 28px; }
.c-team { display: grid; gap: 14px; }
@media (min-width: 720px) { .c-team { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.c-team article { display: flex; gap: 14px; align-items: center; padding: 18px; border-radius: 18px; background: #fff; }
.c-ava { flex: none; display: grid; place-items: center; width: 56px; height: 56px; border-radius: 50%; background: #0e7c7b; color: #fff; font-weight: 700; }
.c-team h3 { font: 700 1.05rem/1.25 "Onest", sans-serif; }
.c-team p { margin: 0; color: #3d5c61; }
.c-book { display: grid; gap: 24px; margin-top: 40px; margin-bottom: 40px; background: #0f2e33; color: #fff; border-radius: 28px; padding: 40px 28px; }
.c-book p { color: #c8dfe0; }
.c-book label { color: #fff; }
.c-book .c-btn { background: #fff; border-color: #fff; color: #0f2e33 !important; }
@media (min-width: 900px) { .c-book { grid-template-columns: .8fr 1.2fr; padding: 48px; } }
.c-faq details { border-bottom: 1px solid #d3e9e8; }
.c-faq summary { min-height: 52px; display: flex; align-items: center; font-weight: 700; cursor: pointer; padding: 12px 0; }
.c-faq details p { color: #3d5c61; }
.c-contacts { display: grid; gap: 18px; padding-top: 0; }
@media (min-width: 720px) { .c-contacts { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.c-contacts h3 { font: 700 1.05rem/1.2 "Onest", sans-serif; margin-bottom: 4px; color: #0e7c7b; }

/* ---------------- Avtoservis: «Motor Pro» — grafit va signal to'q sariq */
.nm-avtoservis { background: #f2f2ef; color: #17191c; }
.a-top { display: flex; flex-wrap: wrap; gap: 10px 24px; align-items: center; justify-content: space-between; padding: 16px 20px; background: #17191c; color: #fff; }
.a-top > * { max-width: 1120px; }
.a-logo { font: 700 24px/1 "Sora", sans-serif; letter-spacing: .06em; text-decoration: none; }
.a-logo span { color: #ff7a1a; margin-left: 4px; }
.a-top nav { display: flex; gap: 18px; flex-wrap: wrap; font-weight: 600; }
.a-top nav a { text-decoration: none; display: inline-block; padding: 6px 0; }
.a-hero { padding: 56px 20px 64px; background: #17191c; color: #fff; }
.a-hero > * { max-width: 1080px; margin-left: auto; margin-right: auto; }
.a-kicker { color: #ff9a4d; font-weight: 600; }
.a-hero h1 { font: 700 clamp(2.2rem, 6vw, 4rem)/1.04 "Sora", sans-serif; letter-spacing: -.02em; margin: 6px auto 18px; }
.a-hero > p { font-size: 1.1rem; color: #c3c7cc; }
.a-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; margin-bottom: 32px; }
.a-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 52px; padding: 12px 24px; border: 2px solid #ff7a1a; border-radius: 8px; background: #ff7a1a; color: #17191c !important; font: 700 1rem/1 "Sora", sans-serif; text-decoration: none; cursor: pointer; }
.a-btn-ghost { background: transparent; color: #fff !important; }
.a-facts { list-style: none; padding: 0; display: flex; flex-wrap: wrap; gap: 10px; }
.a-facts li { padding: 12px 16px; border-left: 3px solid #ff7a1a; background: #22252a; color: #c3c7cc; }
.a-facts b { color: #fff; }
.a-sec { max-width: 1120px; margin: 0 auto; padding: 52px 20px; }
.a-sec h2 { font: 700 clamp(1.7rem, 3.6vw, 2.4rem)/1.15 "Sora", sans-serif; margin-bottom: 24px; }
.a-cards { display: grid; gap: 14px; }
@media (min-width: 720px) { .a-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1000px) { .a-cards { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.a-cards article { padding: 22px; border-radius: 10px; background: #fff; border: 1px solid #dcdcd6; }
.a-num { display: block; margin-bottom: 10px; color: #c75400; font: 700 1rem/1 "Sora", sans-serif; }
.a-cards h3 { font: 700 1.1rem/1.25 "Sora", sans-serif; margin-bottom: 8px; }
.a-cards p { color: #4a4f57; margin: 0; }
.a-calc { background: #fff; border: 1px solid #dcdcd6; border-radius: 16px; }
.a-est { display: grid; gap: 18px; }
@media (min-width: 900px) { .a-est { grid-template-columns: 1fr 1fr; } .a-total, .a-hint { grid-column: 1 / -1; } }
.a-est fieldset { margin: 0; padding: 16px 18px; border: 1px solid #dcdcd6; border-radius: 10px; }
.a-est legend { padding: 0 6px; font-weight: 700; }
.a-est label { display: flex; align-items: center; gap: 10px; min-height: 44px; cursor: pointer; }
.a-est input { width: 20px; height: 20px; accent-color: #ff7a1a; }
.a-total { margin: 0; font-size: 1.2rem; }
.a-total b { color: #c75400; font: 700 1.6rem/1.2 "Sora", sans-serif; }
.a-hint { color: #4a4f57; font-size: 15px; }
.a-book { display: grid; gap: 24px; margin-top: 40px; margin-bottom: 40px; background: #17191c; color: #fff; border-radius: 16px; padding: 40px 28px; }
.a-book p { color: #c3c7cc; }
.a-book label { color: #fff; }
@media (min-width: 900px) { .a-book { grid-template-columns: .8fr 1.2fr; padding: 48px; } }
.a-contacts { display: grid; gap: 18px; padding-top: 0; }
@media (min-width: 720px) { .a-contacts { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.a-contacts h3 { font: 700 1.05rem/1.2 "Sora", sans-serif; margin-bottom: 4px; }

/* ---------------- Qurilish mollari: «Mustahkam» — beton kulrang va qurilish sarig'i */
.nm-qurilish-mollari { background: #ecebe7; color: #1f1f1d; }
.q-top { display: flex; flex-wrap: wrap; gap: 10px 24px; align-items: center; justify-content: space-between; max-width: 1120px; margin: 0 auto; padding: 18px 20px; }
.q-logo { display: flex; align-items: center; gap: 10px; font: 700 23px/1 "Sora", sans-serif; text-decoration: none; text-transform: uppercase; letter-spacing: .04em; }
.q-logo span { width: 30px; height: 30px; background: repeating-linear-gradient(-45deg, #ffcc00 0 7px, #1f1f1d 7px 14px); border-radius: 4px; }
.q-top nav { display: flex; gap: 18px; flex-wrap: wrap; font-weight: 600; }
.q-top nav a { text-decoration: none; display: inline-block; padding: 6px 0; }
.q-hero { max-width: 1120px; margin: 0 auto; padding: 32px 20px 60px; display: grid; gap: 28px; align-items: end; }
@media (min-width: 900px) { .q-hero { grid-template-columns: 1.4fr .6fr; } }
.q-kicker { display: inline-block; padding: 4px 10px; background: #ffcc00; font-weight: 700; font-size: 14px; text-transform: uppercase; letter-spacing: .06em; }
.q-hero h1 { font: 700 clamp(2rem, 5vw, 3.4rem)/1.08 "Sora", sans-serif; letter-spacing: -.02em; margin: 12px 0 16px; max-width: 20ch; }
.q-hero p { font-size: 1.1rem; color: #4b4b46; max-width: 52ch; }
.q-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 22px; }
.q-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 52px; padding: 12px 24px; border: 2px solid #1f1f1d; border-radius: 6px; background: #1f1f1d; color: #ffcc00 !important; font: 700 1rem/1 "Sora", sans-serif; text-decoration: none; cursor: pointer; }
.q-btn-ghost { background: transparent; color: #1f1f1d !important; }
.q-facts { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.q-facts li { padding: 14px 18px; background: #fff; border-left: 6px solid #ffcc00; color: #4b4b46; }
.q-facts b { color: #1f1f1d; }
.q-sec { max-width: 1120px; margin: 0 auto; padding: 52px 20px; }
.q-sec h2 { font: 700 clamp(1.7rem, 3.6vw, 2.4rem)/1.15 "Sora", sans-serif; margin-bottom: 24px; }
.q-table { background: #fff; border-radius: 10px; overflow: hidden; border: 1px solid #d7d5cf; }
.q-row { display: grid; grid-template-columns: 1fr auto; gap: 4px 16px; padding: 14px 18px; border-bottom: 1px solid #ecebe7; }
.q-row span[role="cell"]:nth-child(2) { grid-row: 2; color: #6b6b64; font-size: 14px; }
.q-row b { grid-row: 1 / 3; grid-column: 2; align-self: center; white-space: nowrap; }
.q-head { background: #1f1f1d; color: #fff; font-weight: 700; }
.q-head span:nth-child(2) { display: none; }
@media (min-width: 720px) {
  .q-row { grid-template-columns: 1fr 120px 160px; }
  .q-row span[role="cell"]:nth-child(2), .q-head span:nth-child(2) { grid-row: auto; display: block; }
  .q-row b, .q-head span:nth-child(3) { grid-row: auto; grid-column: auto; text-align: right; }
}
.q-note { margin-top: 14px; color: #4b4b46; }
.q-calc { background: #ffcc00; border-radius: 16px; }
.q-est { display: grid; gap: 14px; max-width: 720px; }
@media (min-width: 720px) { .q-est { grid-template-columns: 1fr 1fr; } .q-out, .q-hint { grid-column: 1 / -1; } }
.q-est label { display: flex; flex-direction: column; gap: 6px; font-weight: 700; }
.q-est input { min-height: 52px; padding: 10px 14px; border-radius: 8px; border: 2px solid #1f1f1d; font: 600 1.1rem/1 "Onest", sans-serif; background: #fff; color: #1f1f1d; }
.q-out { margin: 6px 0 0; font-size: 1.15rem; }
.q-out b { font: 700 1.4rem/1.2 "Sora", sans-serif; }
.q-hint { margin: 0; color: #3d3a1f; font-size: 15px; }
.q-book { display: grid; gap: 24px; margin-top: 40px; margin-bottom: 40px; background: #1f1f1d; color: #fff; border-radius: 16px; padding: 40px 28px; }
.q-book p { color: #cfcdc6; }
.q-book label { color: #fff; }
.q-book .q-btn { background: #ffcc00; border-color: #ffcc00; color: #1f1f1d !important; }
@media (min-width: 900px) { .q-book { grid-template-columns: .8fr 1.2fr; padding: 48px; } }
.q-contacts { display: grid; gap: 18px; padding-top: 0; }
@media (min-width: 720px) { .q-contacts { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.q-contacts h3 { font: 700 1.05rem/1.2 "Sora", sans-serif; margin-bottom: 4px; }
