/* ===== mebelisofia — clean white UI/UX ===== */
.ms{--bg:#ffffff;--soft:#f7f6f3;--ink:#1a1a1d;--muted:#5b5a56;--line:#e9e6e1;--accent:#b0834f;--accent-2:#8f6838;
  font-family:"Manrope",system-ui,-apple-system,sans-serif;color:var(--ink);background:var(--bg);line-height:1.6}
.ms *{box-sizing:border-box}
.ms .wrap{max-width:1360px;margin:0 auto;padding:0 clamp(20px,5vw,56px)}
.ms h1,.ms h2,.ms h3{font-weight:800;letter-spacing:-.025em;line-height:1.1;margin:0;color:var(--ink)}
.ms p{margin:0}
.ms .eyebrow{font-size:.78rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--accent)}
.ms .btn{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:1rem;padding:15px 30px;border-radius:100px;text-decoration:none;cursor:pointer;transition:.2s;border:0}
.ms .btn-primary{background:var(--ink);color:#fff}
.ms .btn-primary:hover{background:var(--accent-2)}
.ms .btn-ghost{background:transparent;color:var(--ink);border:1.5px solid var(--line)}
.ms .btn-ghost:hover{border-color:var(--ink)}

/* hero — clean split */
.ms-hero{display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:clamp(30px,5vw,70px);max-width:1280px;margin:0 auto;padding:clamp(40px,7vw,88px) clamp(20px,5vw,56px)}
.ms-hero .txt .eyebrow{margin-bottom:22px}
.ms-hero h1{font-size:clamp(2.1rem,4.6vw,3.7rem);max-width:14ch}
.ms-hero .sub{margin:24px 0 34px;font-size:clamp(1.05rem,1.5vw,1.25rem);color:var(--muted);max-width:44ch;font-weight:500}
.ms-hero .cta-row{display:flex;flex-wrap:wrap;gap:16px;align-items:center}
.ms-hero .cta-row .phone{font-weight:700;color:var(--ink);text-decoration:none}
.ms-hero .pic{border-radius:26px;overflow:hidden;aspect-ratio:4/3;background:var(--soft);box-shadow:0 30px 60px -30px rgba(26,26,29,.25)}
.ms-hero .pic img{width:100%;height:100%;object-fit:cover}

/* trust — clean light band */
.ms-trust{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--soft)}
.ms-trust .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:22px 32px;padding-top:30px;padding-bottom:30px}
.ms-trust .item b{display:block;font-size:1.05rem;font-weight:800}
.ms-trust .item span{font-size:.85rem;color:var(--muted)}

/* section base */
.ms-sec{padding:clamp(56px,8vw,112px) 0}
.ms-sec.soft{background:var(--soft)}
.ms-sec .head{max-width:640px;margin-bottom:clamp(34px,5vw,58px)}
.ms-sec .head .eyebrow{margin-bottom:16px}
.ms-sec h2{font-size:clamp(1.8rem,3.6vw,2.85rem)}
.ms-sec .head p{margin-top:18px;color:var(--muted);font-size:1.12rem}

/* services — clean cards */
.ms-serv .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.ms-card{border:1px solid var(--line);border-radius:20px;padding:36px 32px;transition:.25s;background:var(--bg);text-decoration:none;color:inherit;display:block}
.ms-card:hover{border-color:var(--accent);transform:translateY(-4px);box-shadow:0 20px 40px -24px rgba(26,26,29,.2)}
.ms-card .num{font-size:.78rem;font-weight:700;color:var(--accent);letter-spacing:.12em}
.ms-card h3{font-size:1.32rem;margin:14px 0 10px}
.ms-card p{color:var(--muted);font-size:.98rem}

/* process — clean numbered */
.ms-proc .grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}
.ms-step .n{font-size:2.2rem;font-weight:800;color:var(--accent)}
.ms-step h3{font-size:1.18rem;margin:12px 0 8px}
.ms-step p{color:var(--muted);font-size:.95rem}

/* gallery — real project photos */
.ms-gallery .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.ms-g{border-radius:16px;overflow:hidden;aspect-ratio:4/3;cursor:zoom-in;background:var(--soft)}
.ms-g img{width:100%;height:100%;object-fit:cover;transition:transform .55s cubic-bezier(.2,.7,.2,1)}
.ms-g:hover img{transform:scale(1.05)}
.ms-gallery .note{margin-top:22px;font-size:.9rem;color:var(--muted)}
.ms-gallery .note a{color:var(--accent-2)}

/* reviews */
.ms-rev .row{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-bottom:32px}
.ms-rev .big{font-size:3rem;font-weight:800;line-height:1}
.ms-rev .stars{color:var(--accent);letter-spacing:3px;font-size:1.3rem}
.ms-rev .who{color:var(--muted);font-size:.95rem}
.ms-rev blockquote{margin:0;font-size:1.25rem;font-weight:600;line-height:1.5;max-width:60ch}
.ms-rev cite{display:block;margin-top:14px;font-style:normal;color:var(--muted);font-size:.95rem;font-weight:500}

/* CTA */
.ms-cta{background:var(--ink);color:#fff}
.ms-cta .wrap{padding-top:clamp(60px,8vw,104px);padding-bottom:clamp(60px,8vw,104px);text-align:center}
.ms-cta h2{color:#fff;font-size:clamp(1.9rem,3.6vw,2.85rem);max-width:20ch;margin:0 auto}
.ms-cta p{color:rgba(255,255,255,.7);margin:18px auto 32px;max-width:50ch;font-size:1.1rem}
.ms-cta .cta-row{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}
.ms-cta .btn-primary{background:#fff;color:var(--ink)}
.ms-cta .btn-primary:hover{background:var(--accent);color:#fff}
.ms-cta .btn-ghost{color:#fff;border-color:rgba(255,255,255,.3)}

/* responsive */
@media(max-width:900px){.ms-serv .grid{grid-template-columns:1fr}.ms-proc .grid{grid-template-columns:1fr 1fr}.ms-gallery .grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.ms-hero{grid-template-columns:1fr;gap:28px}.ms-hero .pic{order:-1;aspect-ratio:16/11}.ms-hero h1{max-width:none}}
@media(max-width:560px){.ms-proc .grid,.ms-gallery .grid{grid-template-columns:1fr}.ms .btn{width:100%;justify-content:center}.ms-hero .cta-row .phone{width:100%;text-align:center}}
@supports(padding:env(safe-area-inset-left)){.ms .wrap,.ms-hero{padding-left:max(clamp(20px,5vw,56px),env(safe-area-inset-left));padding-right:max(clamp(20px,5vw,56px),env(safe-area-inset-right))}}

/* ===== widescreen full-bleed hero (clean white) ===== */
.ms-hero-full{position:relative;min-height:min(86svh,800px);display:flex;align-items:center;overflow:hidden;background:var(--soft)}
.ms-hero-full>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.ms-hero-full::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.9) 0%,rgba(255,255,255,.74) 30%,rgba(255,255,255,.38) 52%,rgba(255,255,255,0) 78%)}
.ms-hero-full .wrap{position:relative;z-index:2;width:100%}
.ms-hero-full .inner{max-width:560px}
.ms-hero-full .eyebrow{margin-bottom:22px}
.ms-hero-full h1{font-size:clamp(2.3rem,5vw,4rem);max-width:14ch;color:#000;font-weight:800}
.ms-hero-full .sub{margin:24px 0 34px;font-size:clamp(1.05rem,1.5vw,1.28rem);color:#111;max-width:42ch;font-weight:600}
.ms-hero-full .cta-row{display:flex;flex-wrap:wrap;gap:16px;align-items:center}
.ms-hero-full .cta-row .phone{font-weight:700;color:var(--ink);text-decoration:none}
@media(max-width:760px){
  .ms-hero-full{align-items:flex-end;min-height:min(82svh,680px);padding-bottom:14px}
  .ms-hero-full::before{background:linear-gradient(0deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.92) 42%,rgba(255,255,255,.6) 72%,rgba(255,255,255,.25) 100%)}
  .ms-hero-full .inner{max-width:none}
}

.ms .eyebrow::before,.ms .eyebrow:before{display:none!important}
.ms .eyebrow{display:inline-block}
.ms-hero-full .eyebrow{color:#8f6838}

/* ===== hero: снимка отгоре + текст на бяло отдолу (Идея A) ===== */
.ms-hero-top{background:var(--bg)}
.ms-hero-top .band{width:100%;height:min(60svh,560px);overflow:hidden;background:var(--soft)}
.ms-hero-top .band img{width:100%;height:100%;object-fit:cover;object-position:center 55%}
.ms-hero-top .txt{max-width:1360px;margin:0 auto;padding:clamp(44px,6vw,78px) clamp(20px,5vw,56px);display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(30px,5vw,64px);align-items:end}
.ms-hero-top .eyebrow{margin-bottom:20px}
.ms-hero-top h1{color:#000;font-weight:800;font-size:clamp(2.3rem,5vw,4rem);max-width:16ch}
.ms-hero-top .aside{padding-bottom:6px}
.ms-hero-top .sub{font-size:clamp(1.05rem,1.4vw,1.25rem);color:var(--muted);font-weight:500;margin-bottom:26px;max-width:42ch}
.ms-hero-top .cta-row{display:flex;flex-wrap:wrap;gap:16px;align-items:center}
.ms-hero-top .cta-row .phone{font-weight:700;color:var(--ink);text-decoration:none}
@media(max-width:820px){.ms-hero-top .txt{grid-template-columns:1fr;gap:24px;align-items:start}.ms-hero-top h1{max-width:none}}
@media(max-width:560px){.ms-hero-top .cta-row{flex-direction:column;align-items:stretch}.ms-hero-top .cta-row .btn{width:100%;justify-content:center}.ms-hero-top .cta-row .phone{text-align:center}}

/* headline под trust лентата */
.ms-hero-txt{padding:clamp(44px,6vw,78px) 0}
.ms-hero-txt .wrap{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(30px,5vw,64px);align-items:end}
.ms-hero-txt .eyebrow{margin-bottom:20px}
.ms-hero-txt h1{color:#000;font-weight:800;font-size:clamp(2.3rem,5vw,4rem);max-width:16ch}
.ms-hero-txt .sub{font-size:clamp(1.05rem,1.4vw,1.25rem);color:var(--muted);font-weight:500;margin-bottom:26px;max-width:42ch}
.ms-hero-txt .cta-row{display:flex;flex-wrap:wrap;gap:16px;align-items:center}
.ms-hero-txt .cta-row .phone{font-weight:700;color:var(--ink);text-decoration:none}
@media(max-width:820px){.ms-hero-txt .wrap{grid-template-columns:1fr;gap:24px;align-items:start}.ms-hero-txt h1{max-width:none}}
@media(max-width:560px){.ms-hero-txt .cta-row{flex-direction:column;align-items:stretch}.ms-hero-txt .cta-row .btn{width:100%;justify-content:center}}
/* бяла 3D секция — mv3d вече е светъл, само рамка */




/* 3D секция — бяла, чиста, работеща mv3d */



.ms-3d .mv3d-top{display:none}
.ms-3d .mv3d-viewer{height:min(64vh,580px);background:#f5f3ef}
.ms-3d .mv3d-loader{background:#f5f3ef}
@media(max-width:560px){.ms-3d .mv3d-viewer{height:min(56vh,440px)}}

/* 3D — чиста рамка (без loader, зарежда eager) */





@media(max-width:560px){}
/* 3D — работещ mv-wrap (стилизиран от index css), само център + widescreen */
.ms-3d .head{text-align:center;margin:0 auto clamp(30px,4vw,44px)}
.ms-3d .head h2{font-size:clamp(1.7rem,3.4vw,2.6rem)}
.ms-3d .mv-wrap{max-width:1100px;margin:0 auto}
/* 3D layout fix — форсиран, побеждава index.cjazfrfu.css */
.ms-3d .wrap{display:block!important}
.ms-3d .head{display:block!important;width:100%!important;text-align:center!important;margin:0 auto clamp(28px,4vw,42px)!important}
.ms-3d .head h2{font-size:clamp(1.7rem,3.4vw,2.6rem)!important;max-width:none!important;line-height:1.1!important}
.ms-3d .mv-wrap{display:block!important;width:100%!important;max-width:1080px!important;margin:0 auto!important;float:none!important}
.ms-3d .mv-wrap .mv-stage{width:100%!important}
.ms-3d .mv-wrap .mv-stage model-viewer,.ms-3d .mv-wrap model-viewer{width:100%!important;height:min(62vh,540px)!important;min-height:420px!important;display:block!important}
/* 3D loader — overlay + криене (заменя scoped Astro CSS, който махнахме) */
.ms-3d .mv-stage{position:relative}
.ms-3d .mv-loader{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.9rem;background:var(--soft);transition:opacity .45s ease;z-index:2;color:var(--muted)}
.ms-3d .mv-loader.done{opacity:0!important;pointer-events:none!important;visibility:hidden!important}
/* fullscreen бутон на 3D — в ъгъла на полето, ясен вид */
.ms-3d .mv-wrap{position:relative}
.ms-3d .mv-full{position:absolute!important;top:14px;right:14px;left:auto!important;bottom:auto!important;z-index:5;width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,.9);color:var(--ink);border:1px solid var(--line);border-radius:12px;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 4px 14px rgba(26,26,29,.12);transition:.2s}
.ms-3d .mv-full:hover{background:var(--ink);color:#fff;border-color:var(--ink);transform:scale(1.06)}
.ms-3d .mv-full svg{width:19px;height:19px}

/* ЧЗВ акордеон (бял дизайн) */
.ms-faq{max-width:820px;margin:0 auto}
.ms-faq details{border-bottom:1px solid var(--line)}
.ms-faq summary{list-style:none;cursor:pointer;font-weight:700;font-size:1.1rem;padding:20px 44px 20px 0;position:relative;color:var(--ink)}
.ms-faq summary::-webkit-details-marker{display:none}
.ms-faq summary::after{content:"+";position:absolute;right:6px;top:50%;transform:translateY(-50%);font-size:1.6rem;font-weight:400;color:var(--accent);line-height:1}
.ms-faq details[open] summary::after{content:"\2212"}
.ms-faq details p{margin:0 0 22px;color:var(--muted);font-size:1.03rem;line-height:1.65;max-width:70ch}
.ms-faq details p a{color:var(--accent-2);text-decoration:underline}

/* article hero (бял, без голяма снимка — за гардероби/съдържателни) */
.ms-article-hero{background:var(--soft);padding:clamp(58px,9vw,116px) 0 clamp(42px,6vw,70px);border-bottom:1px solid var(--line)}
.ms-article-hero .eyebrow{margin-bottom:20px}
.ms-article-hero h1{font-size:clamp(2.3rem,5vw,3.9rem);max-width:16ch;color:var(--ink)}
.ms-article-hero .lead{margin:24px 0 32px;font-size:clamp(1.05rem,1.5vw,1.28rem);color:var(--muted);max-width:54ch;font-weight:500}
.ms-article-hero .cta-row{display:flex;flex-wrap:wrap;gap:16px;align-items:center}
.ms-article-hero .cta-row .phone{font-weight:700;color:var(--ink);text-decoration:none}
/* portrait галерия (вертикални снимки) */
.ms-pgal .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.ms-pgal .g-card{border-radius:16px;overflow:hidden;aspect-ratio:3/4;cursor:zoom-in;background:var(--soft)}
.ms-pgal .g-card img{width:100%;height:100%;object-fit:cover;transition:transform .55s cubic-bezier(.2,.7,.2,1)}
.ms-pgal .g-card:hover img{transform:scale(1.05)}
@media(max-width:820px){.ms-pgal .grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.ms-pgal .grid{grid-template-columns:1fr}}

/* отзив карти (бял дизайн) */
.ms-rev-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.ms-rev-card{margin:0;padding:26px;border:1px solid var(--line);border-radius:18px;background:var(--bg)}
.ms-rev-head{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.ms-rev-av{width:42px;height:42px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem;flex-shrink:0}
.ms-rev-head b{display:block;font-size:1rem}
.ms-rev-src{font-size:.82rem;color:var(--muted)}
.ms-rev-stars{margin-left:auto;color:var(--accent);letter-spacing:1px;font-size:.95rem}
.ms-rev-text{font-size:1.05rem;line-height:1.55;color:var(--ink);font-weight:500}
@media(max-width:600px){.ms-rev-grid{grid-template-columns:1fr}}

/* линк в услуга-карта */
.ms-card-link{display:inline-block;margin-top:14px;font-weight:700;font-size:.92rem;color:var(--accent-2)}
a.ms-card:hover .ms-card-link{color:var(--accent)}

/* форма (контакти) — бял дизайн */
.ms input,.ms textarea,.ms select{font-family:"Manrope",sans-serif;font-size:1rem;padding:13px 16px;border:1.5px solid var(--line);border-radius:12px;background:var(--bg);width:100%;color:var(--ink)}
.ms input:focus,.ms textarea:focus{outline:none;border-color:var(--accent)}
.ms label{font-weight:600;font-size:.9rem;margin-bottom:6px;display:block;color:var(--ink)}
.ms button[type=submit],.ms .c-form button{background:var(--ink);color:#fff;border:0;padding:15px 32px;border-radius:100px;font-weight:700;cursor:pointer;font-family:"Manrope",sans-serif;font-size:1rem}
.ms button[type=submit]:hover{background:var(--accent-2)}
.ms .c-title,.ms h1{color:var(--ink)}

/* свързани услуги ред */
.ms-related-links{display:flex;flex-wrap:wrap;gap:12px}
.ms-related-links a{display:inline-flex;align-items:center;padding:12px 20px;border:1px solid var(--line);border-radius:100px;font-weight:600;color:var(--ink);text-decoration:none;transition:.2s;background:var(--bg)}
.ms-related-links a:hover{border-color:var(--accent);color:var(--accent-2)}

/* ===== мобилна защита (всеки телефон, без бели ленти) ===== */
.ms img,.ms video{max-width:100%;height:auto}
.ms h1,.ms h2,.ms h3,.ms p,.ms a{overflow-wrap:break-word}
html,body{overflow-x:hidden}

/* ===== МОБИЛНИ ПОПРАВКИ ===== */
/* всички карти една под друга на телефон (бие inline 1fr 1fr) */
@media(max-width:640px){
  .ms .grid{grid-template-columns:1fr !important}
}
/* AR бутон „Виж в стаята си" — в 3D полето, цветен, използваем */
.ms-3d .mv-wrap .mv-stage{position:relative}
.ms-3d .mv-ar{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);z-index:6;display:inline-flex;align-items:center;gap:8px;background:var(--ink);color:#fff;border:0;padding:13px 24px;border-radius:100px;font-family:"Manrope",sans-serif;font-weight:700;font-size:.95rem;cursor:pointer}
.ms-3d .mv-ar:hover{background:var(--accent-2)}
