/*
Theme Name: Vinsmart City
Theme URI: https://vinsmart.city
Author: VINSMART.CITY
Description: Kho căn hộ cho thuê Smart City Tây Mỗ.
Version: 2.0.1
Text Domain: vinsmart-city
*/
:root{--ink:#101b2d;--navy:#102a4c;--navy2:#1d416e;--gold:#b99755;--gold-soft:#f4ead5;--cream:#fbfaf7;--soft:#f4f6f8;--muted:#627083;--line:#e1e6eb;--white:#fff;--success:#286c58;--shadow:0 18px 45px rgba(16,42,76,.09);--shadow-sm:0 8px 24px rgba(16,42,76,.07);--radius:16px;--max:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:82px}body{margin:0;color:var(--ink);background:var(--white);font-family:Inter,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body.modal-open{overflow:hidden}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}button,input,select,textarea{font:inherit}button{cursor:pointer}.wrap{width:min(var(--max),calc(100% - 48px));margin:auto}.section{padding:84px 0}.section-tight{padding-top:72px}.section-soft{background:var(--soft)}.eyebrow{margin:0 0 10px;color:#8a6a2e;font-size:12px;font-weight:800;letter-spacing:.12em;line-height:1.5;text-transform:uppercase}.section-head{max-width:790px;margin:0 auto 38px;text-align:center}.section-head.align-left{margin-left:0;text-align:left}.section-head h2{max-width:760px;margin:0 0 12px;font-size:clamp(36px,4vw,50px);font-weight:750;line-height:1.13;letter-spacing:-.035em}.section-head p{margin:0;color:var(--muted);font-size:18px;line-height:1.65}.btn{display:inline-flex;min-height:50px;align-items:center;justify-content:center;gap:8px;padding:12px 22px;border:1px solid transparent;border-radius:10px;background:var(--navy);color:#fff;font-weight:750;line-height:1.25;white-space:nowrap;transition:.2s ease}.btn:hover{background:var(--navy2);transform:translateY(-1px)}.btn-outline{border-color:#b9c3cf;background:#fff;color:var(--navy)}.btn-outline:hover{border-color:var(--navy);background:#f7f9fb}.btn-sm{min-height:42px;padding:9px 15px;font-size:14px}.text-link{padding:0;border:0;background:transparent;color:var(--navy2);font-weight:750;text-align:left}.site-header{position:sticky;z-index:50;top:0;border-bottom:1px solid rgba(16,42,76,.09);background:rgba(255,255,255,.96);box-shadow:0 1px 0 rgba(16,42,76,.03);backdrop-filter:blur(14px)}.site-header.is-scrolled{box-shadow:0 8px 24px rgba(16,42,76,.08)}.nav{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{display:flex;align-items:center;gap:10px;color:var(--navy);font-size:16px;font-weight:900;letter-spacing:.045em;line-height:1.15}.brand-mark{display:grid;width:38px;height:38px;place-items:center;border:1px solid #d1b373;border-radius:9px;background:linear-gradient(145deg,#fff,#f5ead5);color:#8a6a2e;font-size:20px;font-weight:800}.brand small{display:block;margin-top:4px;color:#7a8796;font-size:9px;font-weight:700;letter-spacing:.1em}.menu{display:flex;align-items:center;gap:20px;font-size:13px;font-weight:700}.menu a{padding:26px 0}.menu a:hover{color:#9a7530}.header-phone{padding:10px 14px;border:1px solid #d9c08b;border-radius:9px;color:var(--navy);font-size:14px;font-weight:800}.hamburger{display:none;border:0;background:transparent;color:var(--navy);font-size:26px}.hero{min-height:auto;background:linear-gradient(140deg,#fff 20%,#f8f5ed 100%);color:var(--ink)}.hero-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:58px;align-items:center;padding-top:68px;padding-bottom:68px}.hero-copy{max-width:610px}.hero h1{max-width:620px;margin:6px 0 20px;font-size:clamp(48px,5.2vw,68px);font-weight:780;line-height:1.06;letter-spacing:-.05em}.hero .lead{max-width:590px;margin:0 0 22px;color:#47576a;font-size:20px;line-height:1.55}.hero-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 26px}.hero-chips span{padding:7px 11px;border:1px solid #e0d2b4;border-radius:999px;background:#fff;color:#4c4a43;font-size:13px;font-weight:700}.hero-actions{display:flex;flex-wrap:wrap;gap:10px}.hero-contact{margin:22px 0 0;color:var(--muted);font-size:14px}.hero-contact a{color:var(--navy);font-weight:800}.hero-visual{position:relative;overflow:hidden;border-radius:22px;box-shadow:var(--shadow)}.hero-visual:after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.5);border-radius:inherit;pointer-events:none}.hero-visual img{width:100%;aspect-ratio:1.22/1;object-fit:cover}.hero-stat{position:absolute;right:18px;bottom:18px;display:grid;min-width:132px;padding:14px 16px;border:1px solid rgba(255,255,255,.6);border-radius:12px;background:rgba(255,255,255,.92);box-shadow:var(--shadow-sm);backdrop-filter:blur(8px)}.hero-stat strong{color:var(--navy);font-size:24px;line-height:1.1}.hero-stat span{color:var(--muted);font-size:12px}.property-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.featured-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.property-card{overflow:hidden;border:1px solid var(--line);border-radius:15px;background:#fff;box-shadow:0 5px 20px rgba(16,42,76,.045);transition:.22s ease}.property-card:hover{border-color:#c7d0da;box-shadow:var(--shadow-sm);transform:translateY(-2px)}.property-cover{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:#e9edf1}.property-cover img{width:100%;height:100%;object-fit:cover;transition:.35s transform}.property-card:hover .property-cover img{transform:scale(1.025)}.property-status{position:absolute;left:12px;top:12px;padding:6px 9px;border-radius:7px;background:rgba(255,255,255,.93);color:var(--success);font-size:11px;font-weight:800;box-shadow:0 4px 12px rgba(0,0,0,.08)}.property-body{padding:17px}.property-top{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:11px}.property-code{color:#8b692c;font-weight:850;letter-spacing:.04em}.property-card h3{margin:6px 0 3px;font-size:20px;font-weight:780;line-height:1.3;letter-spacing:-.02em}.property-place{margin:0 0 9px;color:var(--muted);font-size:13px}.property-features{display:flex;flex-wrap:wrap;gap:6px;min-height:28px}.property-features span{padding:4px 7px;border-radius:6px;background:#f3f5f7;color:#536173;font-size:11px}.property-price{display:flex;align-items:baseline;gap:4px;margin:12px 0;color:var(--navy)}.property-price strong{font-size:22px;line-height:1.15}.property-price span{color:var(--muted);font-size:12px}.property-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.property-actions .text-link{font-size:13px}.section-link,.inventory-footer{margin-top:30px;text-align:center}.section-link a{display:inline-flex;gap:10px;align-items:center;color:var(--navy);font-weight:800}.section-link span{color:var(--gold);font-size:20px}.inventory-tools{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:16px;padding:18px;border:1px solid var(--line);border-radius:14px;background:#fff}.filters{display:grid;flex:1;grid-template-columns:repeat(4,minmax(130px,1fr)) auto;gap:10px;align-items:end}.filters label,.sort-control{display:grid;gap:5px;color:#546173;font-size:11px;font-weight:800}.filters select,.sort-control select,.field input,.field select,.field textarea{width:100%;min-height:50px;padding:11px 38px 11px 13px;border:1px solid #cbd4de;border-radius:10px;background:#fff;color:var(--ink);outline:0}.filters select:focus,.sort-control select:focus,.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--navy2);box-shadow:0 0 0 3px rgba(29,65,110,.1)}.sort-control{min-width:180px}.clear-filters{min-height:50px;padding:0 12px;border:0;background:transparent;color:var(--navy2);font-size:12px;font-weight:750}.filter-mobile-toggle{display:none}.inventory-result{display:flex;justify-content:space-between;margin:0 0 18px;color:var(--muted);font-size:13px}.inventory-result :first-child{color:var(--ink);font-weight:800}.empty-result{padding:40px;border:1px dashed #bfc8d1;border-radius:14px;text-align:center;color:var(--muted)}.budget-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.budget-card{padding:22px;border:1px solid var(--line);border-radius:14px;background:#fff}.budget-card h3{margin:0 0 3px;font-size:18px;line-height:1.35}.budget-card>p{margin:0 0 14px;color:var(--muted);font-size:12px}.budget-card ul{margin:0 0 15px;padding:0;list-style:none}.budget-card li{border-top:1px solid #edf0f3}.budget-card li a{display:grid;gap:2px;padding:9px 0;font-size:12px}.budget-card li strong{color:var(--navy)}.budget-card .text-link{font-size:12px}.intent-box{display:grid;grid-template-columns:.8fr 1.2fr;gap:50px;align-items:center;padding:36px;border:1px solid #e3e7eb;border-radius:18px;background:#fff;box-shadow:var(--shadow-sm)}.intent-box h2{max-width:480px;margin:0 0 10px;font-size:38px;line-height:1.15;letter-spacing:-.035em}.intent-box p{margin:0;color:var(--muted)}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.form-grid .wide{grid-column:span 2}.field{display:grid;gap:5px;min-width:0}.field label{font-size:12px;font-weight:800;line-height:1.4}.field textarea{min-height:92px;resize:vertical}.form-submit{align-self:end}.form-submit .btn{width:100%;white-space:nowrap}.form-status{grid-column:1/-1;margin:0;font-size:13px;font-weight:700}.hp{position:absolute!important;left:-9999px!important}.price-table{overflow:hidden;border:1px solid var(--line);border-radius:15px;background:#fff}.price-row{display:grid;grid-template-columns:1fr 1fr 1.1fr 1.1fr;gap:18px;align-items:center;padding:17px 22px;border-top:1px solid var(--line)}.price-row:first-child{border-top:0}.price-head{background:var(--navy);color:#fff;font-size:12px;font-weight:800;text-transform:uppercase}.price-row strong{color:var(--navy)}.district-price{margin-top:28px}.district-price h3{font-size:20px}.district-price>div{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.district-price span{display:flex;justify-content:space-between;gap:15px;padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--cream);font-size:13px}.table-note,.gallery-disclaimer{margin:20px 0 0;padding:14px 17px;border-left:3px solid var(--gold);border-radius:8px;background:#faf7f0;color:#625b4e;font-size:13px}.gallery-large{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.gallery-item{position:relative;overflow:hidden;padding:0;border:0;border-radius:12px;background:#e5e8ea;aspect-ratio:4/3}.gallery-item:nth-child(1),.gallery-item:nth-child(14){grid-column:span 2;grid-row:span 2}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:.3s transform}.gallery-item:hover img{transform:scale(1.025)}.gallery-label{position:absolute;left:9px;bottom:9px;padding:5px 8px;border-radius:6px;background:rgba(15,28,45,.76);color:#fff;font-size:11px}.districts{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.district{padding:25px;border:1px solid var(--line);border-radius:14px;background:#fff}.district>span{color:#b28a43;font-size:12px;font-weight:900}.district h3{margin:9px 0;font-size:23px;line-height:1.25}.district p{min-height:105px;margin:0 0 12px;color:var(--muted);font-size:14px}.district a{color:var(--navy);font-size:13px;font-weight:800}.guide-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.guide-grid article{padding:22px;border:1px solid var(--line);border-radius:13px;background:#fff}.guide-grid h3{margin:0 0 8px;font-size:19px}.guide-grid p{margin:0;color:var(--muted);font-size:14px}.costs{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:16px}.cost{padding:18px;border-radius:12px;background:var(--navy);color:#fff}.cost b{display:block;margin-bottom:3px}.cost span{color:#d7e0eb;font-size:13px}.faq{max-width:860px;margin:auto}.faq details{border-bottom:1px solid var(--line)}.faq summary{padding:18px 3px;cursor:pointer;font-weight:750;line-height:1.45;list-style:none}.faq summary:after{content:"+";float:right;color:#9b7632;font-size:23px}.faq details[open] summary:after{content:"−"}.faq p{margin:0;padding:0 35px 20px 3px;color:var(--muted)}.final-cta{background:linear-gradient(135deg,#f4f0e7,#edf2f7);color:var(--ink)}.final-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:center}.final-layout h2{max-width:540px;margin:0 0 14px;font-size:clamp(38px,4.2vw,52px);font-weight:780;line-height:1.12;letter-spacing:-.04em}.final-layout>div>p{color:var(--muted);font-size:17px}.final-contact{display:flex;gap:18px}.final-contact a{color:var(--navy);font-weight:800}.final-form{padding:25px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:var(--shadow-sm)}.site-footer{padding:58px 0 96px;background:#0d1d33;color:#cbd5e0}.site-footer .brand{color:#fff}.site-footer .brand-mark{border-color:#9d7b3d;background:transparent;color:#ddc88f}.site-footer .brand small{color:#aab7c5}.footer-grid{display:grid;grid-template-columns:1.4fr .8fr .9fr;gap:50px}.site-footer h3{color:#fff}.site-footer a{display:block;margin:8px 0}.site-footer a:hover{color:#dec582}.disclaimer{margin-top:34px;padding-top:23px;border-top:1px solid #2b3c52;color:#9daaba;font-size:12px}.mobile-cta{display:none}.modal{position:fixed;z-index:100;inset:0;display:none;align-items:center;justify-content:center;padding:20px;background:rgba(9,23,42,.7)}.modal.open{display:flex}.modal-card{position:relative;width:min(540px,100%);max-height:calc(100vh - 40px);overflow:auto;padding:30px;border-radius:18px;background:#fff;box-shadow:0 30px 80px rgba(0,0,0,.2)}.modal-close{position:absolute;top:12px;right:12px;display:grid;width:38px;height:38px;place-items:center;border:0;border-radius:9px;background:#eef1f4;color:var(--navy);font-size:24px}.modal h2{padding-right:34px;margin:0 0 7px;font-size:31px;font-weight:780;line-height:1.17;letter-spacing:-.03em}.modal p{margin:0 0 17px;color:var(--muted)}.modal .form-grid{grid-template-columns:1fr}.modal .field{margin:0}.modal .form-submit .btn{min-height:52px}.lightbox{position:fixed;z-index:120;inset:0;display:none;place-items:center;padding:20px;background:rgba(0,0,0,.92)}.lightbox.open{display:grid}.lightbox img{max-height:90vh;border-radius:10px}.lightbox button{position:absolute;top:18px;right:18px;border:0;background:transparent;color:#fff;font-size:38px}.legal{max-width:850px;margin:auto;padding:70px 0}.legal h1,.archive-hero h1,.property-detail h1{font-size:clamp(38px,5vw,54px);font-weight:780;line-height:1.12;letter-spacing:-.04em}.legal h2{margin-top:36px}.legal p,.legal li{color:#47576a}.archive-hero{padding:64px 0 35px;background:var(--cream)}.archive-hero p{max-width:720px;color:var(--muted);font-size:18px}.archive-list{padding:52px 0 90px}.pagination{margin-top:35px;text-align:center}.property-detail{padding:56px 0 90px}.property-detail-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:38px}.property-main-image{overflow:hidden;border-radius:16px}.property-main-image img{width:100%;aspect-ratio:4/3;object-fit:cover}.property-summary{padding:26px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:var(--shadow-sm)}.property-summary h1{margin:8px 0 12px;font-size:40px}.detail-price{color:var(--navy);font-size:30px;font-weight:850}.detail-list{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:22px 0}.detail-list span{padding:11px;border-radius:8px;background:var(--soft);font-size:13px}.detail-actions{display:grid;gap:9px}.detail-content{max-width:850px;margin-top:40px}.detail-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:24px}.detail-gallery .gallery-item:first-child{grid-column:span 2;grid-row:span 2}.skip-link{position:absolute;left:-9999px}.skip-link:focus{z-index:999;top:10px;left:10px;padding:10px;background:#fff}
@media(max-width:1080px){.menu{gap:14px}.menu a{font-size:12px}.header-phone{display:none}.featured-grid{grid-template-columns:repeat(3,1fr)}.budget-grid{grid-template-columns:repeat(3,1fr)}.districts,.guide-grid{grid-template-columns:repeat(2,1fr)}.district p{min-height:0}.gallery-large{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.menu{display:none;position:absolute;top:68px;right:20px;left:20px;padding:14px 18px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:var(--shadow)}.menu.open{display:grid}.menu a{padding:9px 0;font-size:14px}.hamburger{display:block}.nav{min-height:68px}.hero-grid{grid-template-columns:1fr;gap:30px;padding-top:45px}.hero-copy{max-width:760px}.hero h1{max-width:760px}.property-grid,.featured-grid{grid-template-columns:repeat(2,1fr)}.inventory-tools{display:block}.filters{grid-template-columns:repeat(2,1fr)}.sort-control{margin-top:12px}.budget-grid{grid-template-columns:repeat(2,1fr)}.intent-box,.final-layout,.property-detail-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:repeat(2,1fr)}.district-price>div{grid-template-columns:repeat(2,1fr)}.gallery-large{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>:first-child{grid-column:1/-1}}
@media(max-width:640px){body{padding-bottom:66px}.wrap{width:min(100% - 28px,var(--max))}.section{padding:62px 0}.section-head{margin-bottom:28px}.section-head h2{font-size:clamp(29px,9vw,36px);line-height:1.18}.section-head p{font-size:16px}.hero-grid{padding-top:32px;padding-bottom:44px}.hero h1{font-size:clamp(37px,11vw,48px);line-height:1.08}.hero .lead{font-size:17px}.hero-actions .btn{flex:1 1 100%}.hero-contact{line-height:1.5}.hero-visual{border-radius:15px}.hero-stat{right:11px;bottom:11px}.property-grid,.featured-grid{grid-template-columns:1fr}.featured-grid .property-card:nth-child(n+7){display:none}.inventory-tools{padding:0;border:0;background:transparent}.filter-mobile-toggle{display:block;width:100%;min-height:48px;margin-bottom:10px;border:1px solid #b9c3cf;border-radius:10px;background:#fff;color:var(--navy);font-weight:800}.filters{position:fixed;z-index:90;right:0;bottom:0;left:0;display:none;max-height:82vh;overflow:auto;grid-template-columns:1fr;padding:23px 16px calc(18px + env(safe-area-inset-bottom));border-radius:18px 18px 0 0;background:#fff;box-shadow:0 -18px 50px rgba(9,23,42,.18)}.filters.open{display:grid}.sort-control{margin-top:0}.inventory-result{margin-top:14px}.budget-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px}.budget-card{min-width:84%;scroll-snap-align:start}.intent-box{gap:25px;padding:24px}.intent-box h2{font-size:31px}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.form-submit .btn{white-space:normal}.price-table{overflow-x:auto}.price-row{min-width:660px}.district-price>div{grid-template-columns:1fr}.gallery-large{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.gallery-item,.gallery-item:nth-child(1),.gallery-item:nth-child(14){min-width:84%;grid-column:auto;grid-row:auto;scroll-snap-align:center}.districts,.guide-grid,.costs{grid-template-columns:1fr}.final-layout{gap:28px}.final-layout h2{font-size:34px}.footer-grid{grid-template-columns:1fr;gap:28px}.footer-grid>:first-child{grid-column:auto}.mobile-cta{position:fixed;z-index:70;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(3,1fr);padding:7px 7px calc(7px + env(safe-area-inset-bottom));background:#fff;box-shadow:0 -6px 24px rgba(9,23,42,.12)}.mobile-cta a{display:grid;grid-auto-flow:column;gap:5px;min-height:46px;place-content:center;border-right:1px solid var(--line);color:var(--navy);font-size:12px;font-weight:850}.mobile-cta a:last-child{border:0}.modal{align-items:end;padding:12px}.modal-card{width:100%;max-height:calc(100dvh - 24px);padding:24px 20px;border-radius:18px}.modal h2{font-size:28px}.detail-list{grid-template-columns:1fr}.detail-gallery{display:flex;overflow-x:auto}.detail-gallery .gallery-item,.detail-gallery .gallery-item:first-child{min-width:86%}.site-footer{padding-bottom:86px}}
@media(max-width:390px){.wrap{width:min(100% - 24px,var(--max))}.hero h1{font-size:37px}.property-body{padding:15px}.brand{font-size:14px}.brand-mark{width:35px;height:35px}.modal-card{padding:22px 17px}.field input,.field select{min-height:50px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
.property-summary{position:relative}.property-summary>.property-status{position:static;display:inline-flex}
@media(max-width:640px){.hero h1{font-size:36px}}
@media(max-width:390px){.hero h1{font-size:35px}}
