/* Homepage middle — 1:1 port of the approved Lovable baseline. */
.mkh-public-main{display:flex;flex-direction:column}
.mkh-public-main>section{order:var(--mkh-order,0)}
.mkh-home-container{width:100%;max-width:1440px;margin-inline:auto;padding-inline:16px}
.mkh-home-section{border-bottom:1px solid #ded8cf}
.mkh-home-section-inner{padding-block:32px}
.mkh-home-kicker{margin:0;color:#756e66;font-size:10px;font-weight:600;letter-spacing:.22em;text-transform:uppercase}
.mkh-home-section h2{margin:10px 0 0;color:#25221f;font-size:30px;font-weight:500;line-height:1.08;letter-spacing:-.018em}
.mkh-home-section-copy{margin:10px 0 0;color:#756e66;font-size:13px;line-height:1.7}
.mkh-home-viewall{display:inline-flex;align-items:center;gap:7px;color:#25221f;text-decoration:none;font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}
.mkh-home-viewall:hover{color:#b56e43}
.mkh-home-viewall svg{width:15px;height:15px}

/* Hero */
.mkh-home-hero,.mkh-home-hero-inner{min-height:600px}
.mkh-home-title{font-weight:600;line-height:1.25}
.mkh-home-desc{line-height:1.625}

/* Tile types */
.mkh-home-types{background:#f7f4ef}
.mkh-home-types-head{display:grid;grid-template-columns:1fr;gap:16px;align-items:end}
.mkh-home-types-note{display:none;color:#756e66;font-size:12px;line-height:1.6}
.mkh-home-types-actions{margin-top:12px}
.mkh-home-type-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 12px;margin-top:24px}
.mkh-home-type-card{display:block;min-width:0;color:inherit;text-decoration:none}
.mkh-home-type-media{aspect-ratio:1;overflow:hidden;background:#e7e1d8}
.mkh-home-type-media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.mkh-home-type-card:hover .mkh-home-type-media img{transform:scale(1.02)}
.mkh-home-type-name{margin:8px 0 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600;line-height:1.35}
.mkh-home-type-desc{display:-webkit-box;margin:2px 0 0;overflow:hidden;color:#756e66;font-size:10px;line-height:16px;-webkit-box-orient:vertical;-webkit-line-clamp:2}

/* Featured products */
.mkh-home-featured{background:rgba(255,255,255,.55)}
.mkh-home-featured-head{display:grid;grid-template-columns:1fr;gap:16px;align-items:end}
.mkh-home-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px;list-style:none;margin:24px 0 0;padding:0}
.mkh-home-product-card{display:block;overflow:hidden;border-radius:6px;background:#fbfaf7;color:inherit;text-decoration:none;box-shadow:0 4px 12px rgba(37,34,31,.12);transition:box-shadow .3s ease}
.mkh-home-product-card:hover{box-shadow:0 10px 24px rgba(37,34,31,.16)}
.mkh-home-product-media{aspect-ratio:1;overflow:hidden;background:#f2eee8}
.mkh-home-product-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.mkh-home-product-card:hover .mkh-home-product-media img{transform:scale(1.03)}
.mkh-home-product-empty{display:grid;height:100%;place-items:center;color:#756e66;font-size:12px}
.mkh-home-product-body{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:10px 8px 12px}
.mkh-home-product-copy{min-width:0;flex:1}
.mkh-home-product-title{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#5e4738;font-size:14px;font-weight:500;line-height:1.35}
.mkh-home-product-specs{margin:3px 0 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#756e66;font-size:12px}
.mkh-home-product-price{flex:none;text-align:right}
.mkh-home-product-price p{margin:0;white-space:nowrap;color:#5e4738;font-size:14px;font-weight:500;line-height:1.35}
.mkh-home-product-price del{display:block;margin-top:2px;color:#756e66;font-size:12px;font-weight:400}

/* Promotion */
.mkh-home-promo{background:#eee8df;border-bottom-color:#d6cec3}
.mkh-home-promo-grid{display:grid;grid-template-columns:1fr;min-height:320px}
.mkh-home-promo-copy{padding:24px}
.mkh-home-promo-title{margin:10px 0 0!important;color:#4b2017!important;font-size:38px!important;font-weight:400!important;line-height:1.02!important;letter-spacing:-.02em!important}
.mkh-home-promo-condition{margin:18px 0 0;color:#5c4b41;font-size:10px;font-weight:600;letter-spacing:.14em;line-height:1.6;text-transform:uppercase}
.mkh-home-promo-button{display:inline-flex;margin-top:24px;background:#3e2b23;color:#fff;padding:12px 24px;text-decoration:none;font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}
.mkh-home-promo-offer{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:260px;padding:32px 24px;text-align:center;background:linear-gradient(180deg,#f7f2eb 0%,#f1ebe2 52%,#e4d9cb 100%)}
.mkh-home-promo-overline{font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#6e5d52}
.mkh-home-promo-number{margin-top:8px;color:#541f15;font-size:76px;line-height:.88;letter-spacing:-.055em}
.mkh-home-promo-sub{margin-top:10px;color:#6e5d52;font-size:12px}
.mkh-home-benefits{width:100%;max-width:330px;display:grid;grid-template-columns:repeat(3,1fr);margin-top:28px}
.mkh-home-benefit{padding:0 10px;color:#5f534a;font-size:9px;line-height:1.4}
.mkh-home-benefit+.mkh-home-benefit{border-left:1px solid #cfc4b7}
.mkh-home-benefit svg{display:block;width:28px;height:28px;margin:0 auto 8px;stroke-width:1.35}
.mkh-home-promo-art{position:relative;min-height:300px;overflow:hidden}
.mkh-home-promo-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.mkh-home-promo-art:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.05),rgba(0,0,0,.35))}
.mkh-home-promo-art-copy{position:absolute;z-index:1;left:24px;right:24px;bottom:24px;color:#fff}
.mkh-home-promo-art-copy strong{display:block;max-width:300px;font-size:22px;font-weight:400;line-height:1.15}
.mkh-home-promo-art-copy span{display:block;margin-top:10px;font-size:12px;font-style:italic}

/* Spaces */
.mkh-home-spaces{background:#fbfaf7}
.mkh-home-spaces-head{display:grid;grid-template-columns:1fr;gap:16px;align-items:end}
.mkh-home-space-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:24px}
.mkh-home-space-card{position:relative;aspect-ratio:1.13/1;overflow:hidden;background:#ddd4ca;color:#fff;text-decoration:none}
.mkh-home-space-card img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.mkh-home-space-card:hover img{transform:scale(1.02)}
.mkh-home-space-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.70) 0%,rgba(0,0,0,.10) 52%,transparent 78%)}
.mkh-home-space-copy{position:absolute;z-index:1;left:12px;right:12px;bottom:12px}
.mkh-home-space-copy strong{display:block;font-size:12px;font-weight:600;line-height:1.3}
.mkh-home-space-copy span{display:block;margin-top:2px;font-size:9px;opacity:.85}
.mkh-home-space-arrow{position:absolute;z-index:2;right:12px;bottom:12px;display:grid;width:24px;height:24px;place-items:center;border:1px solid rgba(255,255,255,.7);border-radius:50%}
.mkh-home-space-arrow svg{width:12px;height:12px}

/* Philosophy */
.mkh-home-philosophy{background:#e7dfd4;border-bottom-color:#d3c9bd}
.mkh-home-philosophy-grid{display:grid;grid-template-columns:1fr}
.mkh-home-philosophy-copy{padding:40px 24px}
.mkh-home-philosophy-title{margin:10px 0 0!important;color:#201e1a!important;font-size:38px!important;font-weight:400!important;line-height:1.02!important;letter-spacing:-.02em!important}
.mkh-home-philosophy-copy>p{max-width:560px;margin:20px 0 0;color:#5f5a53;font-size:12px;line-height:1.7}
.mkh-home-philosophy-cta{display:inline-flex;margin-top:24px;border:1px solid #625d55;padding:10px 20px;color:#25221f;text-decoration:none;font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}
.mkh-home-values{display:grid;grid-template-columns:1fr;gap:24px;padding:32px 24px;border-top:1px solid rgba(98,93,85,.18)}
.mkh-home-value{display:grid;grid-template-columns:40px 1fr;gap:12px;align-items:start}
.mkh-home-value svg{width:40px;height:40px;stroke-width:1.25}
.mkh-home-value strong{display:block;font-size:13px;font-weight:600}
.mkh-home-value span{display:block;margin-top:4px;color:#5f5a53;font-size:11px;line-height:1.55}
.mkh-home-philosophy-art{position:relative;min-height:310px;overflow:hidden}
.mkh-home-philosophy-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.mkh-home-philosophy-art:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.25),transparent 55%)}
.mkh-home-philosophy-art-copy{position:absolute;z-index:1;left:24px;bottom:24px;color:#fff;font-size:24px;font-weight:400;line-height:1.16}

/* Projects */
.mkh-home-projects{background:rgba(255,255,255,.55)}
.mkh-home-projects .mkh-home-section-inner{padding-block:28px}
.mkh-home-projects-head{display:grid;grid-template-columns:1fr;gap:12px;align-items:end}
.mkh-home-project-grid{display:grid;grid-template-columns:1fr;gap:12px;list-style:none;margin:16px 0 0;padding:0}
.mkh-home-project-card{display:block;border:1px solid #ded8cf;background:#fff;color:inherit;text-decoration:none}
.mkh-home-project-media{aspect-ratio:2.35/1;overflow:hidden;background:#f2eee8}
.mkh-home-project-media img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.mkh-home-project-card:hover img{transform:scale(1.02)}
.mkh-home-project-copy{display:flex;min-height:48px;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px}
.mkh-home-project-copy strong{font-size:12px;font-weight:600;line-height:1.35}
.mkh-home-project-copy span{display:grid;width:20px;height:20px;flex:none;place-items:center;border:1px solid #ded8cf;border-radius:50%}
.mkh-home-project-copy svg{width:11px;height:11px}

/* Process banner */
.mkh-home-process{background:#f7f3ed;border-bottom-color:#e4ddd3}
.mkh-home-process-banner{width:100%;overflow:hidden;background:#eee7de}
.mkh-home-process-banner-img{display:block;width:100%;height:auto;margin:0}

/* Partners */
.mkh-home-partners{background:#e9e1d6;border-bottom-color:#d4cabd}
.mkh-home-partners .mkh-home-section-inner{padding-block:36px}
.mkh-home-partners-grid{display:grid;grid-template-columns:1fr;gap:28px}
.mkh-home-partners-title{font-size:30px!important;font-weight:400!important;line-height:1.08!important;letter-spacing:-.018em!important}
.mkh-home-partners-intro{max-width:460px}
.mkh-home-logo-stack{display:grid;gap:12px}
.mkh-home-logo-row{display:grid;grid-template-columns:1fr;border:1px solid #d2c8bb;background:rgba(248,245,240,.9);transition:background .2s ease}
.mkh-home-logo-row:hover{background:#fff}
.mkh-home-logo-label{padding:16px 20px;border-bottom:1px solid #d2c8bb}
.mkh-home-logo-label span{display:block;color:#756e66;font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase}
.mkh-home-logo-label strong{display:block;margin-top:4px;font-size:17px;font-weight:400}
.mkh-home-logo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.mkh-home-logo{display:grid;min-height:92px;place-items:center;padding:16px 20px;border-right:1px solid #e2dbd1;border-bottom:1px solid #e2dbd1}
.mkh-home-logo img{max-width:100%;max-height:44px;width:auto;height:auto;object-fit:contain;mix-blend-mode:multiply;filter:grayscale(1) contrast(1.25);opacity:.75;transition:filter .2s ease,opacity .2s ease}
.mkh-home-logo:hover img{filter:none;opacity:1}
/* Logo đối tác dùng file có nhiều khoảng trắng quanh logo; phóng phần hiển thị để cân thị giác với hàng khách hàng chiến lược. */
.mkh-home-logo-row:nth-child(2) .mkh-home-logo{overflow:hidden}
.mkh-home-logo-row:nth-child(2) .mkh-home-logo img{transform:scale(1.9);transform-origin:center center}
.mkh-home-logo-row:nth-child(2) .mkh-home-logo:hover img{transform:scale(1.9)}

/* Videos */
.mkh-home-videos{background:rgba(255,255,255,.55)}
.mkh-home-videos-head{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:12px}
.mkh-home-video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;list-style:none;margin:24px 0 0;padding:0}
.mkh-home-video-card{display:block;color:inherit;text-decoration:none}
.mkh-home-video-media{position:relative;overflow:hidden;background:#eee8df}
.mkh-home-video-media.is-portrait{aspect-ratio:9/16}
.mkh-home-video-media.is-wide{aspect-ratio:16/9}
.mkh-home-video-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.mkh-home-video-card:hover img{transform:scale(1.03)}
.mkh-home-video-media:after{content:"";position:absolute;inset:0;background:rgba(37,34,31,.10);transition:background .2s ease}
.mkh-home-video-card:hover .mkh-home-video-media:after{background:rgba(37,34,31,.20)}
.mkh-home-video-play{position:absolute;z-index:1;left:50%;top:50%;display:grid;width:48px;height:48px;place-items:center;transform:translate(-50%,-50%);border-radius:50%;background:rgba(251,250,247,.9)}
.mkh-home-video-play svg{width:20px;height:20px;margin-left:2px}
.mkh-home-video-source{margin:10px 0 0;color:#756e66;font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase}
.mkh-home-video-title{display:-webkit-box;margin:4px 0 0;overflow:hidden;font-size:14px;font-weight:500;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.mkh-home-video-desc{display:-webkit-box;margin:4px 0 0;overflow:hidden;color:#756e66;font-size:12px;line-height:1.5;-webkit-box-orient:vertical;-webkit-line-clamp:2}

.home .mkh-footer{margin-top:0}

/* Process section is intentionally a single lightweight image banner. */
.mkh-home-process{position:relative!important;isolation:auto!important;overflow:hidden!important;background:#f7f3ed!important;border-bottom-color:#e4ddd3!important;color:inherit!important}
.mkh-home-process:before,.mkh-home-process:after{content:none!important;display:none!important}
.mkh-home-process-banner{display:block;width:100%;height:240px;overflow:hidden;background:#eee7de}
.mkh-home-process-banner-img{display:block;width:100%;max-width:none;height:100%;margin:0;object-fit:cover;object-position:center center}
@media(min-width:768px){
  .mkh-home-process-banner{height:320px}
}
@media(min-width:1200px){
  .mkh-home-process-banner{height:400px}
}

@media(min-width:640px){
  .mkh-home-type-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .mkh-home-type-name{font-size:14px}
  .mkh-home-space-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mkh-home-space-copy strong{font-size:14px}
  .mkh-home-space-copy span{font-size:10px}
  .mkh-home-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mkh-home-values{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mkh-home-logo-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
}
@media(min-width:768px){
  .mkh-home-container{padding-inline:32px}
  .mkh-home-section-inner{padding-block:40px}
  .mkh-home-hero,.mkh-home-hero-inner{min-height:680px}
  .mkh-home-title{font-size:48px}
  .mkh-home-desc{font-size:16px}
  .mkh-home-types-head{grid-template-columns:1.25fr .75fr}
  .mkh-home-types-note{display:block;border-left:1px solid #ded8cf;padding-left:20px}
  .mkh-home-product-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 20px}
  .mkh-home-promo-copy{padding:32px}
  .mkh-home-promo-title{font-size:46px!important}
  .mkh-home-promo-number{font-size:86px}
  .mkh-home-spaces-head{grid-template-columns:1fr}
  .mkh-home-space-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .mkh-home-philosophy-copy{padding:48px 32px}
  .mkh-home-philosophy-title{font-size:46px!important}
  .mkh-home-projects .mkh-home-section-inner{padding-block:32px}.mkh-home-process .mkh-home-section-inner{padding-block:64px 42px}
  .mkh-home-projects h2{font-size:34px}
  .mkh-home-project-copy strong{font-size:14px}
  .mkh-home-process-title{font-size:54px!important}.mkh-home-process-subtitle{font-size:15px}
  .mkh-home-partners .mkh-home-section-inner{padding-block:44px}
  .mkh-home-partners-title{font-size:34px!important}
  .mkh-home-videos h2{font-size:42px}
  .mkh-home-video-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(min-width:1024px){
  .mkh-home-container{padding-inline:48px}
  .mkh-home-type-grid{grid-template-columns:repeat(8,minmax(0,1fr))}
  .mkh-home-featured-head{grid-template-columns:1.15fr .65fr auto}
  .mkh-home-promo-grid{grid-template-columns:1.25fr .9fr 1.05fr}
  .mkh-home-promo-copy{padding:40px 48px}
  .mkh-home-promo-art{min-height:320px}
  .mkh-home-spaces-head{grid-template-columns:1.05fr 1fr auto;gap:32px}
  .mkh-home-space-grid{grid-template-columns:repeat(6,minmax(0,1fr))}
  .mkh-home-philosophy-grid{grid-template-columns:1.35fr .85fr 1fr;min-height:360px}
  .mkh-home-values{grid-template-columns:1fr;padding:48px 32px;border-top:0;border-left:1px solid rgba(98,93,85,.18)}
  .mkh-home-philosophy-copy{padding:48px}
  .mkh-home-philosophy-art{min-height:360px}
  .mkh-home-projects-head{grid-template-columns:1.25fr .7fr auto}
  .mkh-home-project-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .mkh-home-process-list{grid-template-columns:repeat(5,minmax(0,1fr))}
  .mkh-home-step{padding-right:0}.mkh-home-process-list:before{display:block}.mkh-home-process-signature{display:block}.mkh-home-step-name{font-size:18px}
  .mkh-home-step-next{display:block}
  .mkh-home-partners-grid{grid-template-columns:.42fr 1.58fr;gap:36px}
  .mkh-home-logo-row{grid-template-columns:190px 1fr}
  .mkh-home-logo-label{border-right:1px solid #d2c8bb;border-bottom:0}
  .mkh-home-video-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:767px){
  .mkh-home-section h2{font-size:28px}
  .mkh-home-promo-art-copy strong{font-size:20px}
}
