:root{--ink:#252925;--muted:#68716b;--cream:#f5f2eb;--paper:#fffdf8;--line:#e3e1d8;--dark:#263b34;--accent:#aa7a46;--accent-soft:#f0e7d7;--white:#fff;--shadow:0 16px 50px rgba(32,44,35,.07)}*{box-sizing:border-box}html{scroll-behavior:auto}body{margin:0;color:var(--ink);background:var(--cream);font:16px/1.55 "DM Sans",Arial,sans-serif}button,input{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,input:focus-visible,a:focus-visible{outline:3px solid #ca9b62;outline-offset:3px}[hidden]{display:none!important}.container{width:min(1180px,calc(100% - 48px));margin-inline:auto}.site-header{position:sticky;top:0;z-index:30;background:rgba(245,242,235,.95);backdrop-filter:blur(16px);border-bottom:1px solid #e3e0d5}.header-inner{height:80px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;align-items:center;gap:11px;flex:none}.brand-mark{display:grid;place-items:center;width:48px;height:48px;background:var(--dark);border-radius:12px;color:#fff;font:800 20px "Manrope",Arial,sans-serif;letter-spacing:-3px;padding-right:4px}.brand-mark span{color:#d6ab76;font-size:14px;align-self:center;margin-left:-3px;margin-top:11px;letter-spacing:-1px}.brand-copy{display:flex;flex-direction:column;line-height:1.2}.brand-copy strong{font:800 17px "Manrope",Arial,sans-serif;letter-spacing:.08em}.brand-copy small{font-size:10px;color:var(--accent);font-weight:700;letter-spacing:.24em;margin-top:4px}.main-nav{display:flex;align-items:center;gap:32px;font-weight:700;font-size:14px}.main-nav a:hover,.footer-content>a:last-child:hover{color:var(--accent)}.header-action,.primary-button{border:0;background:var(--dark);color:#fff;padding:13px 18px;border-radius:9px;font-weight:700}.header-action span,.primary-button span{margin-left:16px}.header-action:hover,.primary-button:hover{background:#39574b}.menu-button{display:none;border:0;background:none;width:44px;height:44px;padding:10px}.menu-button span{display:block;height:2px;background:var(--ink);margin:5px 0}.mobile-nav{display:none}.intro{display:grid;grid-template-columns:1.22fr .78fr;align-items:center;min-height:330px;padding-block:50px 42px;gap:50px}.eyebrow{margin:0;color:var(--accent);font:800 12px "Manrope",Arial,sans-serif;letter-spacing:.14em}.eyebrow-line{display:inline-block;vertical-align:middle;width:28px;height:1px;background:var(--accent);margin-right:8px}.intro h1{font:800 clamp(38px,4vw,62px)/1.15 "Manrope",Arial,sans-serif;letter-spacing:-.055em;margin:20px 0}.intro h1 em{font-style:normal;color:var(--accent)}.intro-copy{max-width:610px;color:#555f57;font-size:17px;margin:0}.intro-art{position:relative;height:260px;overflow:hidden;border-radius:120px 10px 10px 10px;background:#d8c7ae}.art-frame{position:absolute;inset:0;background:linear-gradient(135deg,#e9dec9 1%,#c1a88e 100%)}.art-wall{position:absolute;inset:0 25% 21% 0;background:linear-gradient(120deg,#eae0d0,#d1c0a7);clip-path:polygon(0 0,100% 0,80% 100%,0 100%)}.art-door{position:absolute;right:22%;top:20%;width:23%;height:66%;border:9px solid #7a6957;background:#a3947e;box-shadow:inset 0 0 0 5px #c9baa2}.art-window{position:absolute;left:17%;top:23%;width:25%;height:42%;border:8px solid #8f7a61;background:linear-gradient(130deg,#f7e5bd,#b8c0b7);box-shadow:12px 12px 0 #c1af94}.art-window:before{content:"";position:absolute;left:48%;height:100%;border-left:4px solid #8f7a61}.art-platform{position:absolute;bottom:-7%;height:30%;left:0;right:0;background:linear-gradient(130deg,#b49879,#e5d3bb);transform:skewY(-5deg)}.art-chair{position:absolute;bottom:11%;left:48%;width:25%;height:23%;background:#564d3e;border-radius:45% 45% 10% 10%;box-shadow:0 21px 0 -14px #564d3e}.art-sun{position:absolute;width:100px;height:100px;border-radius:50%;background:#f1dbac;right:-30px;top:-35px;filter:blur(3px)}.art-caption{position:absolute;bottom:12px;right:18px;font:700 10px "Manrope",Arial,sans-serif;letter-spacing:.2em;color:#fff}.calculator-section{padding:52px 0 88px;background:#edeae1;scroll-margin-top:80px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:30px}.section-heading h2{font:800 clamp(28px,3vw,39px)/1.2 "Manrope",Arial,sans-serif;letter-spacing:-.04em;margin:8px 0 0}.section-heading>p{max-width:390px;color:var(--muted);margin:0 0 4px}.workspace{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(390px,.95fr);gap:24px;align-items:start}.form-panel,.result-panel{background:var(--paper);border:1px solid #e8e4d9;border-radius:16px;box-shadow:var(--shadow)}.form-section{padding:28px 30px;border-bottom:1px solid var(--line)}.form-section.last{border-bottom:0}.step-title{display:flex;gap:15px;align-items:flex-start;margin-bottom:22px}.step-title>span{display:grid;place-items:center;flex:none;border:1px solid #cdbca4;border-radius:7px;color:var(--accent);width:33px;height:33px;font:800 12px "Manrope",Arial,sans-serif}.step-title h3{font:800 18px "Manrope",Arial,sans-serif;margin:1px 0 1px}.step-title p{font-size:14px;color:var(--muted);margin:0}.project-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.option{position:relative;cursor:pointer;text-align:left;color:var(--ink);font:inherit;display:flex;align-items:center;gap:11px;border:1px solid var(--line);border-radius:9px;padding:13px 14px;min-height:58px;background:#fff;transition:.2s}.option:hover{border-color:#a6b8aa}.option:focus-visible,.choice:focus-visible,.garden-control:has(input:focus-visible){outline:3px solid #ca9b62;outline-offset:2px}.option[aria-checked=true]{background:#eef3ef;border-color:#668874;box-shadow:inset 0 0 0 1px #668874}.option input{position:absolute;opacity:0;width:1px;height:1px;left:16px;top:50%;pointer-events:none}.option-icon{display:grid;place-items:center;flex:none;width:30px;height:30px;border-radius:7px;background:#f2eee6;color:#9a774e;font-size:17px}.option strong{font-size:14px;line-height:1.3}.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.choice-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.choice{position:relative;cursor:pointer;text-align:left;color:var(--ink);font:inherit;display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:8px;background:#fff;min-height:50px;padding:10px 13px;font-weight:700;font-size:14px}.choice:hover{border-color:#a6b8aa}.choice[aria-checked=true]{background:#eef3ef;border-color:#668874;color:var(--dark)}.choice input{position:absolute;opacity:0;width:1px;height:1px;left:16px;top:50%;pointer-events:none}.radio-dot{width:17px;height:17px;border:1.5px solid #a9aaa2;border-radius:50%;flex:none}.choice[aria-checked=true] .radio-dot{border:5px solid #557863}.field-label{font-weight:800;font-size:14px;margin:0 0 10px}.package-label{margin-top:23px}.package-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.garden-control{position:relative;display:flex;align-items:center;gap:12px;padding:16px;margin-top:22px;background:#f7f5ef;border-radius:8px;cursor:pointer}.garden-control input{position:absolute;opacity:0;width:1px;height:1px;left:16px;top:50%;pointer-events:none}.checkbox-visual{width:19px;height:19px;border:1.5px solid #8e958d;border-radius:4px;flex:none}.garden-control:has(input:checked) .checkbox-visual{background:var(--dark);border-color:var(--dark)}.garden-control:has(input:checked) .checkbox-visual:after{content:"✓";display:block;color:#fff;font-size:14px;text-align:center;line-height:17px}.garden-control>span:last-child{display:flex;flex-direction:column}.garden-control strong{font-size:14px}.garden-control small{color:var(--muted);font-size:12px}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.field{display:flex;flex-direction:column;min-width:0}.field label{font-weight:800;font-size:14px;margin-bottom:8px}.field label span{font-weight:500;color:var(--muted)}.field input{width:100%;height:48px;border:1px solid #cdd1c9;border-radius:8px;background:#fff;padding:0 13px;font-weight:700;color:var(--ink);outline:none}.field input:focus{border-color:#5a8267;box-shadow:0 0 0 3px #e1eae0}.field input[aria-invalid=true]{border-color:#ad5349}.field small{font-size:12px;color:var(--muted);margin-top:5px}.area-row{margin-top:19px}.stepper{display:flex;border:1px solid #cdd1c9;border-radius:8px;overflow:hidden;height:48px}.stepper button{border:0;background:#f6f5f0;width:43px;font-size:20px;color:var(--dark)}.stepper button:hover{background:#e4ece3}.stepper input{border:0!important;box-shadow:none!important;text-align:center;padding:0;appearance:textfield}.stepper input::-webkit-outer-spin-button,.stepper input::-webkit-inner-spin-button{appearance:none;margin:0}.area-note{display:flex;flex-direction:column;justify-content:center;background:#edf2eb;border-radius:8px;padding:10px 14px}.area-note span{font-size:12px;color:var(--muted)}.area-note strong{font:800 22px "Manrope",Arial,sans-serif;color:#365b46}.area-note small{color:var(--muted);font-size:11px}.form-error{color:#a53b31;background:#fff3ef;border-radius:7px;padding:10px 12px;font-size:14px}.form-actions{display:flex;align-items:center;gap:20px;margin-top:25px}.primary-button{padding:14px 20px}.reset-button{border:0;background:none;color:var(--muted);font-weight:700}.reset-button:hover{text-decoration:underline}.result-panel{position:sticky;top:102px;padding:28px 28px 25px}.result-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.estimate-tag{display:inline-flex;align-items:center;gap:7px;color:#548266;font-size:12px;font-weight:700}.estimate-tag span{width:7px;height:7px;border-radius:50%;background:#65a773}.result-panel h2{font:800 29px "Manrope",Arial,sans-serif;letter-spacing:-.04em;margin:9px 0 0}.result-subtitle{color:var(--muted);font-size:14px;margin:2px 0 21px}.total-box{background:var(--dark);color:#fff;border-radius:12px;padding:22px 24px;position:relative;overflow:hidden}.total-box:after{content:"";position:absolute;right:-65px;top:-90px;width:230px;height:230px;border:1px solid rgba(255,255,255,.12);border-radius:50%;box-shadow:0 0 0 42px rgba(255,255,255,.04)}.total-box span{position:relative;z-index:1;display:block;color:#d3dfd5;font:800 11px "Manrope",Arial,sans-serif;letter-spacing:.11em}.total-box strong{position:relative;z-index:1;display:block;font:800 clamp(28px,3vw,39px) "Manrope",Arial,sans-serif;letter-spacing:-.04em;margin:8px 0 0;white-space:nowrap}.total-box p{position:relative;z-index:1;color:#d3dfd5;font-size:13px;margin:2px 0 0}.result-group{border-bottom:1px solid var(--line);padding:20px 0 9px}.group-heading{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:9px}.group-heading h3{font:800 16px "Manrope",Arial,sans-serif;margin:0}.group-heading span{font-weight:800;color:var(--dark)}.cost-row{padding:10px 0;border-top:1px solid #eeece6}.cost-line{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.cost-line>div:first-child{display:flex;align-items:center;gap:8px;min-width:0}.cost-line strong{font-size:14px;font-weight:600}.cost-line>span{font-size:14px;font-weight:700;white-space:nowrap}.detail-button{border:0;background:none;color:#9a6c39;font-weight:700;font-size:12px;padding:3px 0 0;text-decoration:underline;text-underline-offset:3px}.cost-detail{background:#f5f4ee;border-radius:7px;color:#58645b;margin:9px 0 2px;padding:10px 12px;font-size:13px}.cost-detail p{margin:0}.result-footer>p{display:flex;align-items:flex-start;gap:8px;font-size:12px;color:#69736b;line-height:1.55;margin:18px 0}.info-icon{display:grid;place-items:center;flex:none;border:1px solid #aeb7ac;border-radius:50%;height:16px;width:16px;font-weight:800;font-family:Georgia,serif;font-size:11px}.outline-button{width:100%;display:flex;justify-content:space-between;align-items:center;border:1px solid var(--dark);border-radius:8px;color:var(--dark);background:#fff;padding:12px 16px;font-weight:800}.outline-button:hover{background:#edf3ee}.rates-section{padding-block:94px;scroll-margin-top:90px}.section-heading.narrow>p{max-width:450px}.rate-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.rate-cards article{border:1px solid #dedbd2;background:#fffdf8;border-radius:12px;padding:24px;min-height:190px}.rate-cards article>span{font:800 12px "Manrope",Arial,sans-serif;color:var(--accent)}.rate-cards h3{font:800 20px "Manrope",Arial,sans-serif;margin:20px 0 8px}.rate-cards p{color:var(--muted);font-size:14px;margin:0}.rates-disclaimer{font-size:13px;color:var(--muted);margin:20px 0 0}.process-section{background:#243a32;color:#fff;padding:85px 0 95px;scroll-margin-top:80px}.process-section .section-heading>p{color:#bdd0c3}.process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;list-style:none;padding:0;margin:35px 0 0;border-top:1px solid rgba(255,255,255,.25);border-left:1px solid rgba(255,255,255,.25)}.process-grid li{min-height:170px;padding:21px 20px;border-right:1px solid rgba(255,255,255,.25);border-bottom:1px solid rgba(255,255,255,.25)}.process-grid li>span{font:800 12px "Manrope",Arial,sans-serif;color:#d2a875}.process-grid h3{font:800 16px "Manrope",Arial,sans-serif;margin:23px 0 7px}.process-grid p{color:#bed0c4;font-size:13px;margin:0}.site-footer{background:#1b2d27;color:#fff;padding:30px 0}.footer-content{display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-content .brand-mark{background:#e8e1d3;color:#243a32}.footer-content .brand-copy small{color:#d0a975}.footer-content p,.footer-content>a:last-child{font-size:13px;color:#c0d0c4}.toast{position:fixed;bottom:22px;left:50%;transform:translate(-50%,30px);opacity:0;pointer-events:none;background:#263b34;color:#fff;padding:10px 17px;border-radius:8px;box-shadow:var(--shadow);transition:.2s;z-index:50}.toast.show{transform:translate(-50%,0);opacity:1}
@media(max-width:1000px){.main-nav{gap:17px}.header-action{display:none}.workspace{grid-template-columns:minmax(0,1fr) minmax(350px,.9fr)}.result-panel{padding:22px}.package-grid{grid-template-columns:1fr}.intro{grid-template-columns:1.3fr .7fr}.intro-art{height:230px}}@media(max-width:760px){.container{width:min(100% - 28px,600px)}.header-inner{height:68px}.brand-mark{width:42px;height:42px}.brand-copy strong{font-size:15px}.main-nav{display:none}.menu-button{display:block}.mobile-nav:not([hidden]){display:flex;flex-direction:column;padding:10px 20px 20px;background:var(--cream);border-top:1px solid var(--line)}.mobile-nav a,.mobile-nav button{padding:10px 5px;text-align:left;font-weight:700}.mobile-nav button{border:0;background:none;color:var(--accent)}.intro{display:block;min-height:0;padding-block:42px 32px}.intro h1{font-size:38px}.intro-copy{font-size:16px}.intro-art{display:none}.calculator-section{padding:40px 0 65px}.section-heading{display:block}.section-heading>p{margin-top:11px;font-size:14px}.workspace{display:block}.result-panel{position:static;margin-top:18px}.rates-section{padding-block:70px}.rate-cards{grid-template-columns:1fr}.rate-cards article{min-height:0}.process-section{padding-block:65px}.process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-content{flex-wrap:wrap}.footer-content p{order:3;width:100%;margin:0}}@media(max-width:480px){.container{width:calc(100% - 24px)}.intro h1{font-size:34px}.form-section{padding:22px 18px}.project-options{grid-template-columns:1fr}.choice-grid{grid-template-columns:1fr}.choice-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.choice{font-size:13px}.field-grid{gap:10px}.field label{font-size:13px}.field small{font-size:11px}.result-panel{padding:23px 17px}.result-top{display:block}.estimate-tag{margin-top:7px}.total-box{padding:20px}.total-box strong{font-size:29px}.process-grid{grid-template-columns:1fr}.process-grid li{min-height:130px}.process-grid h3{margin-top:14px}}@media print{body{background:#fff;color:#000;font-size:11pt}.site-header,.intro,.section-heading,.form-panel,.rates-section,.process-section,.site-footer,.result-footer button,.detail-button,.toast{display:none!important}.calculator-section{padding:0;background:#fff}.container{width:100%;max-width:none}.workspace{display:block}.result-panel{position:static;border:0;box-shadow:none;padding:0}.result-panel:before{content:"D27 STUDIO  /  BẢNG KHÁI TOÁN ĐẦU TƯ";display:block;font-weight:800;letter-spacing:.1em;border-bottom:1px solid #888;padding-bottom:13px;margin-bottom:24px}.cost-detail{display:block!important;background:#fff;border:1px solid #ddd}.total-box{color:#000;background:#fff;border:2px solid #333}.total-box span,.total-box p{color:#333}.result-group,.cost-row{break-inside:avoid}}




.contact-section{background:#eee6d8;padding:68px 0;scroll-margin-top:80px}.contact-content{display:flex;align-items:center;justify-content:space-between;gap:40px}.contact-content h2{font:800 clamp(27px,3vw,38px)/1.2 "Manrope",Arial,sans-serif;letter-spacing:-.04em;margin:10px 0}.contact-content p:last-child{color:var(--muted);margin:0}.contact-actions{display:flex;flex-direction:column;gap:10px;min-width:275px}.contact-actions a{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 18px;background:var(--dark);color:#fff;border-radius:8px;font-weight:800}.contact-actions a:last-child{background:#fff;color:var(--dark)}.contact-actions a:hover{opacity:.85}.result-contact{font-size:12px;color:var(--muted);margin:0 0 16px}.result-contact a{color:var(--dark);font-weight:700;text-decoration:underline;text-underline-offset:2px}.footer-links{display:flex;gap:18px;font-size:13px;color:#c0d0c4}.footer-links a:hover{text-decoration:underline}@media(max-width:760px){.contact-content{display:block}.contact-actions{margin-top:24px;min-width:0}.footer-links{order:3;width:100%;flex-wrap:wrap;gap:8px 16px}}@media print{.contact-section{display:none!important}.result-contact{color:#000}}

/* Use the exact logo asset from the previous D27 estimate. */
.brand-logo{display:block;flex:none;width:44px;height:44px;object-fit:contain;border-radius:6px}
.brand{gap:12px}
.brand-copy small{color:#70746e;letter-spacing:.16em}
.site-footer{background:#fffdf8;color:var(--ink);border-top:1px solid var(--line)}
.site-footer .brand-copy small{color:#70746e}
.footer-links,.footer-content>a:last-child{color:#56615b}

