@import url('https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@400;500;600;700;800&display=swap');
:root{--green:#008c4f;--green-mid:#008c4f;--mint:#d3f2e4;--ink:#202921;--muted:#727b71;--paper:#f8f9f6;--line:#d2e5dc;--font:'Be Vietnam Pro',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;font:14px/1.8 var(--font);background:var(--paper);color:var(--ink)}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.3}h2{font-size:clamp(26px,3.15vw,46px);font-weight:500;letter-spacing:-1.5px}h2 em{font-style:normal;font-weight:800;color:var(--green)}h3{font-size:20px}p{color:var(--muted)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer;color:inherit}a,button,input,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #6ba568;outline-offset:5px}button{border:0}img{max-width:100%;display:block}
.header{display:flex;align-items:center;gap:25px;padding:18px 6.3%;min-height:108px;background:#f8f9f6f2;backdrop-filter:blur(15px);position:sticky;top:0;z-index:30;border-bottom:1px solid #dce4d330}.brand{display:flex;flex-direction:column;align-items:center;line-height:1;flex-shrink:0}.brand-symbol{font-size:53px;letter-spacing:-7px;font-weight:800;color:var(--green);position:relative;padding-right:6px;line-height:.9}.brand-symbol>span{position:absolute;left:15px;top:21px;font-size:17px;letter-spacing:0;color:var(--paper)}.brand-name{font-size:17px;letter-spacing:-1px;font-weight:700;color:#489150;margin-top:6px}.brand-tagline{font-size:13px;letter-spacing:2.2px;font-weight:700}.header nav{display:flex;gap:35px;margin-left:auto;font-size:12px;letter-spacing:2px;text-transform:uppercase}.header nav a{position:relative}.header nav a:after{content:'';position:absolute;left:0;bottom:-5px;width:0;height:2px;background:var(--green);transition:width .25s}.header nav a:hover:after{width:100%}.menu-toggle{display:none;background:none;font-size:25px}
.section{padding:85px 6.3%;position:relative}.center-heading{text-align:center;margin-bottom:62px}.overline{font-size:22px;letter-spacing:3px;color:#454e43;margin-bottom:8px}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;min-height:47px;padding:12px 26px;border:1px solid transparent;border-radius:5px;background:var(--green);color:white;font-size:12px;transition:transform .25s,background .25s,box-shadow .25s}.button:hover{transform:translateY(-3px);background:#286a47;box-shadow:0 8px 25px #19492f20}.button>span{font-size:20px}.corner-cta{position:absolute;right:6.3%;top:20px}.corner-cta .button{font-size:10px;min-height:38px;padding:7px 18px;border-radius:2px}.image-placeholder{position:relative;min-height:150px;background:linear-gradient(135deg,#e3eadd,#ceddc5);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;overflow:hidden;color:#77916c}.image-placeholder:before,.image-placeholder:after{content:'';position:absolute;left:20%;width:65%;height:180%;border:1px solid #ffffff75;transform:rotate(35deg);pointer-events:none}.image-placeholder:after{left:34%}.image-symbol{font-size:34px;font-weight:400;opacity:.45;line-height:1}.image-placeholder small{font-size:8px;letter-spacing:1.4px;text-align:center;padding:0 16px;z-index:1}.image-placeholder img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:2}.image-placeholder:has(img)>.image-symbol,.image-placeholder:has(img)>small{display:none}
.hero{padding-top:20px;padding-bottom:50px}.hero-banner{position:relative;min-height:600px;border-radius:23px;overflow:hidden;display:grid;place-items:center;text-align:center;color:#fff;background:var(--green)}.hero-background{position:absolute;inset:0;background:radial-gradient(ellipse at 75% 10%,#527658,#123529 75%);color:#b1c6a6;min-height:100%}.hero-background:before,.hero-background:after{border-color:#d1e7b70a}.hero-background>.image-symbol{display:none}.hero-background>small{position:absolute;right:24px;bottom:25px;font-size:7px;opacity:.55}.hero-background:has(img):after{inset:0;width:100%;height:100%;transform:none;background:#08261b80;border:0;z-index:3}.hero-content{position:relative;z-index:4;padding:70px 30px}.hero-badge{display:inline-block;padding:10px 28px;color:#d2e6bf;background:#b5d49921;border:1px solid #c2d7a837;border-radius:50px;font-size:12px;font-weight:700;letter-spacing:1px;margin-bottom:33px}.hero h1{font-size:clamp(38px,5.2vw,76px);font-weight:800;letter-spacing:-2px}.hero-description{font-size:16px;color:#d2dccb;margin-top:24px;line-height:1.9}.hero-hotline{margin-top:35px;border-radius:50px;background:#bdd6a5;color:#1b492f;font-size:14px;font-weight:700;padding:12px 33px}.hero-hotline:hover{background:#d3e5c4}.hero-scroll{position:absolute;bottom:24px;left:calc(50% - 18px);border:1px solid #d5e4c737;border-radius:50%;width:36px;height:36px;display:grid;place-items:center;z-index:5;animation:bob 3s ease-in-out infinite}.hero-corner{position:absolute;left:25px;bottom:30px;font-size:7px;letter-spacing:2px;color:#abc59c}.hero-grid{position:absolute;inset:0;background-image:linear-gradient(#c0daaa08 1px,transparent 1px),linear-gradient(90deg,#c0daaa08 1px,transparent 1px);background-size:64px 64px;animation:drift 25s linear infinite}.mobile-break{display:none}
.section-heading{display:flex;gap:20px;align-items:center;margin-bottom:48px}.section-heading h2{font-size:clamp(25px,3.1vw,45px)}.heading-mark{font-size:55px;line-height:1;color:var(--green)}.concerns-layout{display:grid;grid-template-columns:1.6fr 1fr;gap:55px;align-items:center}.concerns-copy ol{margin:0 0 32px;padding-left:24px}.concerns-copy li{padding-left:3px;margin-bottom:20px;font-size:15px;line-height:1.95;font-style:italic;color:#535b52}.concerns-collage{display:grid;grid-template-columns:1.1fr 1fr;grid-template-rows:1fr 1fr;gap:12px;height:370px}.concerns-collage>.image-placeholder:first-child{grid-row:span 2}.concerns-collage .image-placeholder{min-height:0;border-radius:5px}
.audience{padding-top:85px;padding-bottom:50px;isolation:isolate}.audience:before{content:'';position:absolute;inset:65% 0 0;background:var(--green);z-index:-1}.audience .center-heading{margin-bottom:64px}.audience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;max-width:1100px;margin:auto}.audience-card{background:#fff;padding:14px 14px 25px;border-radius:25px;transition:transform .3s}.audience-card:hover{transform:translateY(-6px)}.audience-image{position:relative}.audience-image>.image-placeholder{height:235px;border-radius:17px}.small-badge{position:absolute;z-index:3;top:14px;left:12px;border-radius:30px;background:#184b37;color:#eff4e8;font-size:7px;padding:7px 10px;letter-spacing:.7px}.star-badge{position:absolute;bottom:12px;right:12px;background:#f8f9f3;padding:3px 13px;border-radius:25px;color:#a49154;letter-spacing:4px;font-size:18px;z-index:3}.audience-card details{margin:25px 10px 0}.audience-card summary{display:flex;gap:12px;align-items:center;justify-content:space-between;cursor:pointer;list-style:none}.audience-card summary::-webkit-details-marker{display:none}.audience-card h3{font-size:20px;color:#234831;max-width:200px}.plus{width:47px;height:47px;flex-shrink:0;background:var(--green);border-radius:50%;display:grid;place-items:center;color:white;font-size:28px;font-weight:400;transition:transform .3s}.audience-card details[open] .plus{transform:rotate(45deg)}.audience-card details p{font-size:12px;margin-top:20px}.inline-link{display:inline-block;font-size:11px;color:var(--green);margin-top:12px;border-bottom:1px solid #a5b899}.audience-teaser{font-size:11px;padding:20px 10px 0}.solutions .center-heading h2{font-size:clamp(24px,2.9vw,41px)}.solutions .center-heading{margin-bottom:30px}.solution-carousel{position:relative;padding:0 56px}.solution-cards{display:grid;grid-template-columns:1fr 1.15fr 1fr;gap:23px;align-items:end;padding-top:100px;min-height:480px}.solution-card{position:relative;background:var(--green);border-radius:25px;padding:160px 25px 29px;min-height:310px;color:white;transition:transform .35s,opacity .35s}.solution-card.featured{min-height:360px;padding-top:200px;background:#1d5b3c}.solution-card .image-placeholder{position:absolute;right:10px;top:-75px;width:190px;height:190px;min-height:0;border-radius:50%;box-shadow:0 0 0 8px var(--paper)}.solution-card.featured .image-placeholder{width:225px;height:225px;top:-95px}.solution-card h3{font-size:20px;text-transform:uppercase;margin-bottom:12px}.solution-card p{font-size:11px;color:#ceddc3;min-height:66px}.solution-card a{display:inline-block;font-size:10px;border-bottom:1px solid #c4dbb755;margin-top:15px}.solution-number{position:absolute;top:18px;left:17px;border:1px solid #b6d29855;background:#92bd7033;padding:3px 16px;border-radius:30px;color:#d7e8c8;font-size:11px}.carousel-arrow{position:absolute;top:61%;width:39px;height:39px;border-radius:50%;color:white;background:var(--green);font-size:23px}.carousel-arrow:hover{background:#56864b}.carousel-arrow.prev{left:0}.carousel-arrow.next{right:0}.carousel-status{text-align:center;font-size:9px;letter-spacing:2px;margin-top:24px}
.benefits{display:grid;grid-template-columns:.8fr 1.2fr;gap:75px;align-items:center;padding-top:100px}.benefits h2{font-size:36px;line-height:1.45;letter-spacing:1px}.benefits h2 em{font-size:53px;letter-spacing:-2px}.benefits-copy>p:not(.overline){margin:25px 0 30px;max-width:330px;font-size:13px}.benefit-list{list-style:none;padding:0 0 0 25px;margin:0;display:grid;gap:17px;max-width:360px}.benefit-list li{border:1px solid #a8b7a0;border-radius:12px;position:relative;padding:12px 20px 12px 36px;text-transform:uppercase;font-size:14px}.benefit-list li>span{position:absolute;left:-24px;top:50%;transform:translateY(-50%);height:45px;width:45px;border-radius:50%;display:grid;place-items:center;color:#f0f5e9;background:var(--green);font-size:24px;border:4px solid var(--paper)}.benefits-collage{display:grid;grid-template-columns:repeat(6,1fr);grid-template-rows:240px 215px;gap:18px}.benefits-collage .image-placeholder{grid-column:span 2;min-height:0;border-radius:28px}.benefits-collage .image-placeholder:nth-child(-n+2){grid-column:span 3}
.process{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.process h2{font-size:33px;font-weight:400;letter-spacing:1px}.process h2 em{font-size:49px}.process-list{list-style:none;padding:0;margin:30px 0 0}.process-list li{margin-bottom:11px}.process-step{text-align:left;line-height:1.8;font-size:15px;background:none;padding:5px 8px;border-radius:7px;transition:background .25s;width:100%;border-left:3px solid transparent}.process-step.selected{background:#e6edde;border-left-color:var(--green)}.process-step:hover{background:#edf1e7}.process-image-wrap{position:relative;padding:0 45px 0 0}.process-main{height:480px;border-radius:38px 70px 55px 22px}.process-insets{position:absolute;right:15px;top:55px;display:grid;gap:23px}.process-insets .image-placeholder{border:6px solid var(--paper);width:170px;height:150px;min-height:0;border-radius:20px}.process-spark{position:absolute;top:-23px;left:-18px;border:7px solid var(--paper);background:#91b875;color:#fff;border-radius:50%;width:63px;height:63px;display:grid;place-items:center;font-size:32px}.process-meter{position:absolute;right:0;top:12px;bottom:12px;display:flex;flex-direction:column;align-items:center;gap:15px;font-size:15px;color:#87967e}.process-meter>div{width:4px;flex:1;border-radius:10px;background:#e5e9e0;position:relative;overflow:hidden}.process-meter>div>span{position:absolute;top:0;width:100%;height:16.66%;background:#659550;transition:height .4s}.process-controls{display:flex;align-items:center;justify-content:space-between;margin-top:24px;font-size:12px;gap:12px}.stage-pill{background:#d0e2bd;padding:7px 20px;border-radius:50px}.circle-button{background:none;color:var(--green);width:36px;height:36px;border:1px solid #75986a;border-radius:50%;font-size:25px}
.demo .center-heading h2{font-size:clamp(25px,3.1vw,44px)}.demo-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:stretch}.demo-copy{display:flex;flex-direction:column;align-items:flex-start;padding-top:30px}.demo-copy .overline{font-size:10px;letter-spacing:2px}.demo-copy h3{font-size:28px;font-weight:500;margin-top:12px}.demo-copy>p:not(.overline){font-size:12px;line-height:1.9;margin:22px 0}.demo-copy>small{font-size:9px;color:#829077}.demo-copy>.button{margin-top:auto}.scene-buttons{display:flex;gap:8px;flex-wrap:wrap}.scene-buttons button{padding:9px 12px;background:transparent;border:1px solid #ced9c5;border-radius:5px;font-size:10px}.scene-buttons button.selected{background:var(--green);border-color:var(--green);color:white}.demo-media{min-width:0}.room-demo{height:500px!important}
.room-demo{height:425px;position:relative;background:#d9ddca;border-radius:16px;overflow:hidden;box-shadow:0 25px 55px #21372112;transition:background 1s}.room-header{position:absolute;top:24px;left:25px;right:25px;display:flex;justify-content:space-between;font-size:8px;letter-spacing:1.5px}.room-header .status-dot{background:#527847;margin-right:4px}.room-wall{position:absolute;inset:0;background:linear-gradient(0deg,#a7b291 25%,transparent 25%);transition:filter 1s}.room-window{position:absolute;right:11%;top:20%;width:31%;height:45%;background:linear-gradient(#b2c7ba,#e8e8b7);border:8px solid #9daa8a;overflow:hidden}.room-window:after{content:'';position:absolute;left:48%;height:100%;width:4px;background:#94a180}.curtain{position:absolute;top:0;height:100%;width:18%;background:repeating-linear-gradient(90deg,#849475,#a9b296 7px,#849475 14px);transition:width 1s;z-index:1}.curtain.right{right:0}.curtain.left{left:0}.room-art{position:absolute;top:23%;left:13%;height:24%;width:22%;border:6px solid #a8b49a;background:linear-gradient(140deg,#74836b,#d2d6bb)}.room-art:after{content:'';position:absolute;width:60%;height:65%;border:1px solid #e2e6cd;border-radius:60% 50% 0 0;left:20%;top:17%}.sofa{position:absolute;left:11%;bottom:23%;width:56%;height:25%;background:#677b5c;border:1px solid #8b9b78;border-radius:19px 19px 5px 5px;box-shadow:0 12px 14px #334f3525}.sofa:after{content:'';position:absolute;left:-8%;bottom:-5%;height:60%;width:116%;border-radius:10px;background:linear-gradient(#7f906e,#617553);border:1px solid #a5b38c66}.sofa span{position:absolute;top:15%;height:45%;width:35%;background:#96a584;border-radius:8px;left:9%}.sofa span+span{left:52%;background:#adb39a}.room-table{position:absolute;bottom:17%;left:40%;width:31%;height:9%;background:#40563d;border-radius:50%;box-shadow:0 10px 0 -5px #334c32,0 20px 0 -10px #334c32}.room-plant{position:absolute;font-size:95px;color:#3d5c3b;right:5%;bottom:20%}.room-light{position:absolute;top:10%;left:37%;height:50%;width:35%;background:radial-gradient(ellipse at top,#ffffbb55,transparent 70%);transition:opacity 1s}.room-stats{position:absolute;bottom:17px;left:17px;right:17px;background:#f7f9f0df;backdrop-filter:blur(12px);border:1px solid #fff9;border-radius:9px;display:grid;grid-template-columns:repeat(3,1fr);padding:15px;text-align:center}.room-stats>div+div{border-left:1px solid #c6d1bf}.room-stats span{font-size:7px;letter-spacing:1.3px;display:block;color:#70806b}.room-stats strong{display:block;font-size:19px;font-weight:500;margin-top:3px}.room-demo[data-scene=movie] .room-wall{filter:brightness(.55) saturate(.7)}.room-demo[data-scene=sleep] .room-wall{filter:brightness(.3) saturate(.6)}.room-demo[data-scene=movie] .curtain,.room-demo[data-scene=sleep] .curtain{width:50%}.room-demo[data-scene=movie] .room-light{opacity:.3}.room-demo[data-scene=sleep] .room-light{opacity:0}
.packages{isolation:isolate;padding-bottom:65px;padding-top:105px}.packages:before{content:'';position:absolute;left:4%;right:4%;top:70%;bottom:0;background:var(--green);border-radius:40px 40px 0 0;z-index:-1}.packages .center-heading{margin-bottom:82px}.package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px;align-items:start;padding:0 4%}.package-card{position:relative;background:#fff;border:1px dashed #55804c;border-radius:27px;padding:36px 25px 35px;min-height:445px;text-align:center;display:flex;flex-direction:column}.package-card h3{font-size:34px;color:#183d2c}.package-subtitle{font-size:12px;margin-top:8px}.price-label{font-size:17px;margin-top:28px;font-weight:600;color:#3f653c}.package-card ul{list-style:none;padding:25px 0 0;margin:20px 0;border-top:1px solid #bdd1b155;text-align:left;font-size:11px;flex:1}.package-card li{padding:7px 0 7px 19px;position:relative}.package-card li:before{content:'✓';position:absolute;left:0;color:#578349}.package-note{font-size:9px}.package-card>.button{border-radius:30px;position:relative;margin:24px 0 -58px;background:#a8cd8c;color:#173c28;font-weight:600;gap:15px}.package-card.featured{margin-top:-45px;border-color:#b0ce92;background:#c0dca6;min-height:465px}.featured .button{background:white}.package-badge{position:absolute;top:-23px;left:15%;right:15%;padding:10px 4px;border:1px dashed #59864a;background:var(--paper);border-radius:40px;font-size:9px;font-weight:700;letter-spacing:1px}.why .center-heading h2{font-size:clamp(25px,3vw,43px)}.why-layout{display:grid;grid-template-columns:1fr 1fr;gap:45px}.why-intro{display:flex;flex-direction:column;align-items:flex-start}.why-intro h3{font-size:26px;font-weight:500}.why-intro p{font-size:13px;max-width:390px;margin-top:20px}.why-arrow{border:1px solid #719266;border-radius:35px;padding:2px 30px;margin:30px 0 30px auto;color:var(--green);font-size:25px;letter-spacing:4px}.why-intro .image-placeholder{width:100%;min-height:250px;border-radius:3px;margin-top:auto}.why-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #91a587;border-left:1px solid #91a587}.why-grid article{padding:27px 18px;border-right:1px solid #91a587;border-bottom:1px solid #91a587}.why-grid article>span{font-size:11px;color:#819a74}.why-grid h3{font-size:18px;margin:42px 0 15px;color:var(--green)}.why-grid p{font-size:11px}.testimonials{padding-top:105px}.testimonial-heading{display:inline-block;border-radius:30px;background:#e0edcf;padding:23px 35px;margin-bottom:48px}.testimonial-heading h2{font-size:clamp(25px,3vw,43px)}.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.testimonial-card{position:relative;border-radius:25px;overflow:hidden;min-height:210px}.testimonial-card>.image-placeholder{height:100%;min-height:230px}.testimonial-card .image-placeholder:after{inset:0;width:100%;height:100%;background:linear-gradient(0deg,#102e24ce,transparent 85%);transform:none;border:0;z-index:3}.testimonial-card .image-symbol{transform:translateY(-25px)}.testimonial-card .image-placeholder small{position:absolute;top:28px;right:8px;font-size:6px}.testimonial-number{position:absolute;z-index:4;top:20px;left:20px;border:1px solid #fcfff6;border-radius:30px;padding:1px 9px;color:white;font-size:10px}.testimonial-caption{position:absolute;z-index:4;bottom:23px;left:25px;right:20px;color:white}.testimonial-caption h3{font-size:18px;font-weight:500}.testimonial-caption small{font-size:9px;color:#c6d6bc}.projects-heading{margin-bottom:36px}.projects-heading>span{font-size:34px}.projects-heading h2{font-size:53px;font-style:italic;margin-left:90px;line-height:1.1}.project-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.project-card{background:white;border-radius:17px;padding:13px;transition:transform .3s}.project-card:hover{transform:translateY(-5px)}.project-card .image-placeholder{height:175px;border-radius:10px;min-height:0}.project-card h3{font-size:12px;text-align:center;padding:20px 0 8px}
.commitment{display:grid;grid-template-columns:1.05fr 1fr;min-height:650px;background:var(--green);color:white}.commitment-copy{padding:50px 10%}.commitment-copy h2{font-size:23px;font-weight:400;letter-spacing:0;border-bottom:1px solid #bfdbac7a;padding-bottom:18px}.commitment-text{padding:30px 0 35px}.commitment-text h3{font-size:17px}.commitment-text p{font-size:12px;color:#c2d5b7;margin-top:15px}.commitment-copy>.image-placeholder{height:270px}.commitment-cover{position:relative;min-height:100%;display:grid;place-items:center;text-align:center}.commitment-cover>.image-placeholder{position:absolute;inset:0;background:linear-gradient(130deg,#8aa080,#416648);color:#d7e7cc}.commitment-cover>.image-placeholder>.image-symbol{transform:translateY(-100px)}.commitment-cover>.image-placeholder>small{position:absolute;bottom:25px}.commitment-cover>div:last-child{position:relative;z-index:4;padding:30px}.commitment-cover h2{font-size:58px;font-weight:800;letter-spacing:0}.commitment-cover p{color:#e6efdf;letter-spacing:2px;font-size:14px;margin-top:15px}.commitment-cover:has(img):after{content:'';position:absolute;inset:0;background:#142a2050;z-index:3}
.contact{display:grid;grid-template-columns:1fr 1fr;gap:55px;padding-top:0;padding-bottom:60px}.contact-title{background:var(--green);padding:35px 25px;margin:0 -20px 40px}.contact-title h2{background:var(--paper);border-radius:70px;padding:12px 20px;text-align:center;font-size:32px;font-weight:700}.contact form{position:relative;padding:0 15px}.contact form:before{content:'Q';position:absolute;z-index:-1;font-size:290px;font-weight:800;color:#dce7d273;left:20%;top:10%;line-height:1;pointer-events:none}.contact label{position:relative;display:block;font-size:12px;color:var(--green);font-weight:600;margin-bottom:25px}.contact input:not([type=hidden]),.contact textarea{display:block;width:100%;border:1px solid #8ba27f;background:transparent;border-radius:5px;padding:13px 14px;margin-top:7px;color:var(--ink);font-weight:400;font-size:14px}.contact textarea{resize:vertical;min-height:70px}.contact form>.button{width:100%;border-radius:40px;margin-top:5px}.form-note{font-size:9px;margin-top:13px}.offer{padding-top:35px;text-align:center}.offer .brand{width:max-content;margin:0 auto 25px}.offer-rule{height:1px;background:#9eb793;margin-bottom:20px}.offer>.image-placeholder{height:385px;border:1px solid #7c9d6b;background:#e7edde}.offer h2{font-size:30px;font-weight:800;letter-spacing:-.8px;margin-top:25px}.offer>p{font-size:10px;margin-top:8px}#form-result{padding-top:20px;margin-top:20px;border-top:1px solid #c7d5bd}#form-result>p{font-size:12px}#form-result .button{margin-top:12px}#copy-status{font-size:10px;margin-left:10px}
footer{background:var(--green);padding-top:140px}.footer-inner{background:var(--paper);border-radius:48px 48px 0 0;padding:60px 6.3% 25px;display:grid;grid-template-columns:1.5fr 1fr;gap:30px 70px}.footer-info h3{font-size:16px;margin-bottom:16px}.footer-services{font-size:14px;font-weight:600;color:#465044}.footer-info address{font-style:normal;display:flex;flex-direction:column;gap:8px;margin-top:60px;font-size:12px}.footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:14px;font-weight:700;font-size:13px;text-transform:uppercase}.footer-links .brand{align-self:flex-end;margin-top:8px}.footer-bottom{grid-column:1/-1;border-top:1px solid #b8c3b1;padding-top:20px;display:flex;justify-content:space-between;font-size:9px;color:#7e8878}
.reveal{opacity:1}.js-motion .reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.js-motion .reveal.visible{opacity:1;transform:translateY(0)}.audience-grid>:nth-child(2),.testimonial-grid>:nth-child(2),.project-grid>:nth-child(2){transition-delay:.07s}.audience-grid>:nth-child(3),.testimonial-grid>:nth-child(3),.project-grid>:nth-child(3){transition-delay:.14s}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#7fad65;margin-right:7px}
@keyframes bob{50%{transform:translateY(5px)}}@keyframes drift{to{background-position:64px 64px}}@media(min-width:1600px){.section,.header{padding-left:max(6.3%,calc((100vw - 1400px)/2));padding-right:max(6.3%,calc((100vw - 1400px)/2))}.hero-banner{min-height:680px}}
@media(max-width:1100px){.header{gap:17px}.brand-tagline{font-size:10px;letter-spacing:1px}.header nav{gap:22px;font-size:10px;letter-spacing:1px}.section{padding:65px 5%}.hero{padding-top:20px}.hero-banner{min-height:550px}.hero-description{font-size:14px}.concerns-layout{gap:30px}.concerns-copy li{font-size:13px}.concerns-collage{height:335px}.audience-grid{gap:23px}.audience-card .image-placeholder{height:200px}.audience-card h3{font-size:17px}.plus{width:38px;height:38px}.small-badge{font-size:6px}.audience .center-heading{margin-bottom:45px}.corner-cta{top:8px;right:5%}.solution-carousel{padding:0 43px}.solution-cards{gap:16px}.solution-card{padding:145px 18px 25px;min-height:330px}.solution-card.featured{padding-top:175px;min-height:370px}.solution-card .image-placeholder{height:150px;width:150px;top:-45px}.solution-card.featured .image-placeholder{height:180px;width:180px;top:-55px}.solution-card h3{font-size:17px}.benefits{gap:40px;padding-top:85px}.benefits h2{font-size:28px}.benefits h2 em{font-size:40px}.benefits-collage{grid-template-rows:200px 190px;gap:12px}.process{gap:30px}.process-step{font-size:13px}.process h2 em{font-size:41px}.process h2{font-size:27px}.process-main{height:425px}.process-insets .image-placeholder{width:135px;height:130px}.demo-layout{gap:35px}.demo-copy h3{font-size:25px}.room-demo{height:450px!important}.packages{padding-top:85px}.package-grid{padding:0;gap:23px}.package-card{padding:32px 20px;min-height:450px}.package-card h3{font-size:29px}.package-badge{font-size:7px}.why-layout{gap:28px}.why-grid article{padding:25px 13px}.why-grid h3{font-size:16px}.testimonial-grid{gap:20px}.project-grid{gap:18px}.project-card .image-placeholder{height:145px}.project-card h3{font-size:10px}.commitment-copy{padding:40px 8%}.commitment-copy h2{font-size:20px}.commitment-cover h2{font-size:47px}.contact{padding-top:0;gap:40px}.contact-title{margin:0 0 30px;padding:28px 20px}.contact-title h2{font-size:25px}.offer>.image-placeholder{height:365px}}
@media(max-width:760px){html{scroll-padding-top:80px}.header{min-height:75px;padding:10px 5%;gap:14px}.brand-symbol{font-size:39px;letter-spacing:-5px}.brand-symbol>span{font-size:12px;left:11px;top:16px}.brand-name{font-size:13px;margin-top:3px}.brand-tagline{font-size:8px;letter-spacing:1.1px;max-width:180px;line-height:1.6}.menu-toggle{display:block;margin-left:auto}.header nav{display:none;position:absolute;left:0;right:0;top:75px;background:var(--paper);padding:25px 6%;border-bottom:1px solid var(--line);font-size:13px}.header nav.open{display:flex;flex-direction:column;gap:21px}.section{padding:52px 6%}h2{font-size:28px;letter-spacing:-.8px}.hero{padding:12px 4% 30px}.hero-banner{min-height:520px;border-radius:17px}.hero-content{padding:55px 18px}.hero-badge{font-size:8px;letter-spacing:.3px;padding:8px 12px;margin-bottom:25px}.hero h1{font-size:37px;line-height:1.35;letter-spacing:-1px}.mobile-break{display:block}.desktop-break{display:none}.hero-description{font-size:12px;margin-top:20px;line-height:1.9}.hero-hotline{font-size:11px;padding:10px 20px;margin-top:25px}.hero-corner{font-size:6px;left:15px;bottom:18px;letter-spacing:1px}.hero-background>small{font-size:5px;right:12px;bottom:18px}.hero-scroll{bottom:40px;width:28px;height:28px;left:calc(50% - 14px);font-size:12px}.section-heading{gap:12px;margin-bottom:28px}.heading-mark{font-size:35px}.section-heading h2{font-size:24px}.concerns-layout{grid-template-columns:1fr;gap:28px}.concerns-copy li{font-size:12px;margin-bottom:18px}.concerns-collage{height:270px;grid-template-columns:1.2fr 1fr;gap:10px}.button{font-size:11px;min-height:43px;padding:10px 20px}.image-placeholder small{font-size:6px;letter-spacing:.8px;padding:0 8px}.image-symbol{font-size:29px}.corner-cta{position:static;display:flex;justify-content:flex-end;margin-bottom:25px}.corner-cta .button{min-height:31px;font-size:9px;padding:5px 12px}.overline{font-size:16px;letter-spacing:2px}.center-heading{margin-bottom:35px}.audience{padding-top:30px}.audience:before{top:30%}.audience .center-heading{margin-bottom:35px}.audience-grid{grid-template-columns:1fr;gap:25px;max-width:380px}.audience-card{padding:12px 12px 22px}.audience-card .image-placeholder{height:235px}.small-badge{font-size:7px}.audience-card h3{font-size:20px;max-width:220px}.audience-card details{margin-top:23px}.audience-teaser{font-size:12px;padding-top:13px}.solution-carousel{padding:0 31px}.solution-cards{grid-template-columns:1fr;padding-top:60px;min-height:390px}.solution-card:not(.featured){display:none}.solution-card.featured{padding:160px 24px 28px;min-height:325px;max-width:380px;width:100%;margin:auto}.solution-card.featured .image-placeholder{width:180px;height:180px;top:-55px;right:15px}.solution-card h3{font-size:20px}.solution-card p{font-size:12px}.carousel-arrow{width:28px;height:28px;font-size:18px;top:58%}.solutions .center-heading h2{font-size:25px}.solution-number{font-size:10px;padding:2px 10px;left:13px}.benefits{grid-template-columns:1fr;gap:30px;padding-top:30px}.benefits .corner-cta{margin-bottom:0}.benefits h2{font-size:28px}.benefits h2 em{font-size:40px}.benefits-copy>p:not(.overline){max-width:none;margin:18px 0 25px;font-size:12px}.benefit-list{max-width:none}.benefit-list li{font-size:12px;padding:10px 20px 10px 35px}.benefits-collage{grid-template-rows:155px 140px;gap:10px}.benefits-collage .image-placeholder{border-radius:16px}.process{grid-template-columns:1fr;gap:35px}.process h2 em{font-size:39px}.process h2{font-size:27px}.process-list{margin-top:22px}.process-step{font-size:13px}.process-list li{margin-bottom:8px}.process-main{height:370px}.process-visual{padding-left:10px}.process-insets .image-placeholder{width:125px;height:120px}.process-insets{top:55px;right:15px;gap:20px}.process-spark{width:48px;height:48px;font-size:23px;top:-12px;left:-12px}.process-meter{font-size:12px}.process-controls{font-size:10px}.demo-layout{grid-template-columns:1fr;gap:25px}.demo-copy{padding-top:0}.demo .center-heading h2{font-size:26px}.demo-copy h3{font-size:25px}.demo-copy>p:not(.overline){margin:18px 0}.demo-copy>.button{margin-top:25px}.room-demo{height:350px!important}.room-header{font-size:7px!important;left:18px!important;right:18px!important}.room-stats{padding:12px!important}.packages{padding-top:25px;padding-bottom:65px}.packages:before{left:0;right:0;top:30%;border-radius:0}.packages .center-heading{margin-bottom:45px}.package-grid{grid-template-columns:1fr;gap:60px;max-width:380px;margin:auto}.package-card{min-height:410px;padding:30px 25px}.package-card.featured{margin-top:0;min-height:410px}.package-card h3{font-size:32px}.package-card ul{font-size:12px}.package-card .button{margin-bottom:-53px}.package-badge{font-size:8px}.why-layout{grid-template-columns:1fr;gap:30px}.why .center-heading h2{font-size:26px}.why-intro h3{font-size:25px}.why-intro p{font-size:12px}.why-arrow{margin:22px 0 22px auto}.why-intro .image-placeholder{min-height:220px}.why-grid{grid-template-columns:repeat(3,1fr)}.why-grid article{padding:17px 11px}.why-grid h3{font-size:13px;margin:25px 0 12px}.why-grid p{font-size:10px}.testimonials{padding-top:25px}.testimonial-heading{padding:20px 22px;border-radius:20px;margin-bottom:28px}.testimonial-heading h2{font-size:25px}.testimonial-grid{grid-template-columns:1fr 1fr;gap:13px}.testimonial-card{border-radius:16px;min-height:190px}.testimonial-card>.image-placeholder{min-height:190px}.testimonial-caption{bottom:16px;left:14px;right:12px}.testimonial-caption h3{font-size:14px}.testimonial-caption small{font-size:7px;line-height:1.6;display:block;margin-top:5px}.testimonial-number{top:12px;left:12px;font-size:8px;padding:1px 6px}.testimonial-card .image-placeholder small{display:none}.projects-heading>span{font-size:26px}.projects-heading h2{font-size:43px;margin-left:55px}.project-grid{grid-template-columns:repeat(2,1fr);gap:14px}.project-card{padding:9px;border-radius:13px}.project-card .image-placeholder{height:140px}.project-card h3{font-size:9px;padding:15px 0 5px}.commitment{grid-template-columns:1fr;min-height:0}.commitment-copy{padding:40px 6%}.commitment-copy h2{font-size:20px}.commitment-copy>.image-placeholder{height:250px}.commitment-cover{min-height:350px}.commitment-cover h2{font-size:45px}.commitment-cover p{font-size:10px;letter-spacing:1px}.contact{grid-template-columns:1fr;gap:15px;padding-top:0}.contact-title{margin:0 -7% 30px;padding:28px}.contact-title h2{font-size:27px}.contact form{padding:0}.contact input:not([type=hidden]),.contact textarea{font-size:16px}.contact label{font-size:12px;margin-bottom:22px}.offer{padding-top:20px}.offer>.image-placeholder{height:300px}.offer h2{font-size:26px}footer{padding-top:90px}.footer-inner{grid-template-columns:1fr;gap:35px;padding:40px 6% 25px;border-radius:30px 30px 0 0}.footer-info h3{font-size:13px}.footer-services{font-size:12px}.footer-info address{font-size:11px;margin-top:30px;gap:10px}.footer-links{font-size:11px;gap:13px}.footer-links .brand{margin-top:-55px}.footer-bottom{font-size:8px;gap:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-motion .reveal{opacity:1;transform:none}}

/* Why HomeQ v2 — six image-led process cards */
.why{padding-top:88px;padding-bottom:102px;background:radial-gradient(circle at 50% 44%,rgba(129,196,158,.16),transparent 38%),#f8fbf7}
.why-layout{display:block;max-width:1680px;margin:0 auto}
.why-showcase{display:none}
.why-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:none;gap:26px;border:0;border-radius:0;overflow:visible;background:transparent}
.why-card{position:relative;display:block;min-width:0;min-height:470px;padding:0!important;overflow:hidden;border:0;border-radius:32px;background:#fff;box-shadow:0 18px 38px rgba(19,67,44,.12);isolation:isolate}
.why-card:hover{transform:translateY(-7px);box-shadow:0 28px 52px rgba(19,67,44,.18)!important}
.why-photo-slot{position:absolute;inset:0 0 auto;width:100%;height:70%;min-height:0;background:#dceadd;overflow:hidden}
.why-photo-slot:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(7,56,37,.12))}
.why-photo-slot img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .5s ease}
.why-card:hover .why-photo-slot img{transform:scale(1.05)}
.why-card-copy{position:absolute;z-index:2;right:0;bottom:0;left:0;display:block;min-height:111px;padding:27px 13px 14px 94px;background:linear-gradient(138deg,#fff 0%,#fbfffc 70%,#d9f0e1 140%);border-radius:56% 46% 0 0 / 37px 37px 0 0}
.why-number{display:none}
.why-icon{position:absolute;top:-25px;left:15px;display:grid;width:61px;height:61px;margin:0;border:5px solid #f5fbf6;border-radius:50%;place-items:center;background:radial-gradient(circle at 30% 25%,#079f63,#00613e 68%);box-shadow:0 11px 22px rgba(0,100,62,.2);color:#fff;font-size:21px;font-weight:800;line-height:1;letter-spacing:0}
.why-card h3{margin:0 0 5px;color:#00683f;font-size:clamp(17px,1.35vw,23px);font-weight:800;line-height:1.08;letter-spacing:-.8px}
.why-card h3:after{content:"";display:block;width:25px;height:2px;margin-top:6px;background:#059458}
.why-card p{margin:0;color:#56635e;font-size:clamp(10px,.78vw,13px);line-height:1.32}
.why-showcase .why-intro{width:60%;min-height:224px;padding:4px 24px 24px 0;background:#f8fbf7;border-radius:0 0 112px 0}
.why-showcase .why-intro h3{max-width:430px}
.why-showcase .why-intro p{max-width:390px}
.why-showcase .why-intro{display:none}
.why-showcase{width:100%;max-width:390px;justify-self:center;aspect-ratio:210 / 297 !important;min-height:0 !important;height:auto !important;border:10px solid #fff;border-radius:30px !important;outline:1px solid rgba(0,120,75,.3);outline-offset:4px;box-shadow:0 20px 42px rgba(20,67,47,.18),0 0 0 5px rgba(225,190,108,.16) !important;background:#fff}
@media(max-width:1200px){.why-showcase .why-intro{width:62%;min-height:224px;padding-right:22px}}
@media(max-width:620px){.why-showcase .why-intro{width:82%;min-height:218px;padding-right:18px;padding-bottom:22px;border-radius:0 0 72px 0}.why-showcase .why-intro h3{font-size:24px}.why-showcase .why-intro p{font-size:12px;margin-top:15px}.why-showcase .why-consult{margin-top:18px}}
.why-card-copy .why-icon{top:12px}
@media(max-width:1200px){.why-grid{gap:20px}.why-card{min-height:405px;border-radius:26px}.why-card-copy{min-height:154px;padding:34px 18px 20px 132px;border-radius:56% 46% 0 0 / 48px 48px 0 0}.why-icon{top:-33px;left:21px;width:78px;height:78px;border-width:6px;font-size:27px}.why-card h3{font-size:25px}.why-card p{font-size:13px}}
@media(max-width:880px){.why-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.why-card{min-height:420px}}
@media(max-width:620px){.why{padding-top:58px;padding-bottom:65px}.why-heading{margin-bottom:28px}.why-heading h2{font-size:30px;letter-spacing:-1px}.why-grid{grid-template-columns:1fr;gap:18px;max-width:450px;margin:auto}.why-card{min-height:365px;border-radius:23px}.why-photo-slot{height:69%}.why-card-copy{min-height:134px;padding:30px 20px 18px 112px;border-radius:56% 46% 0 0 / 42px 42px 0 0}.why-icon{top:-28px;left:16px;width:67px;height:67px;border-width:5px;font-size:23px}.why-card h3{margin-bottom:6px;font-size:24px;letter-spacing:-1px}.why-card h3:after{width:29px;margin-top:7px}.why-card p{font-size:13px;line-height:1.34}}
.partnership-process{display:none!important}
.footer-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 34px;align-items:start;transform:translateX(-18px)}.footer-links a{white-space:nowrap}.footer-links .brand{grid-column:1/-1;justify-self:end;margin-top:4px}
@media(max-width:760px){.footer-links{transform:none}}
.contact-float{position:fixed;z-index:80;right:20px;bottom:20px;display:flex;flex-direction:column;gap:10px}.contact-float__item{display:flex;width:58px;height:58px;align-items:center;justify-content:center;flex-direction:column;gap:1px;border:2px solid rgba(255,255,255,.9);border-radius:50%;color:#fff;box-shadow:0 8px 22px rgba(0,45,28,.28);transition:transform .25s,box-shadow .25s}.contact-float__item:hover{transform:translateY(-3px) scale(1.04);box-shadow:0 12px 28px rgba(0,45,28,.38)}.contact-float__item span{font-size:23px;font-weight:800;line-height:1}.contact-float__item b{font-size:8px;line-height:1}.contact-float__item--phone{background:#008c4f}.contact-float__item--zalo{background:#087bea;font-family:Arial,sans-serif}.contact-float__item--zalo span{font-size:25px;font-weight:900}@media(max-width:760px){.contact-float{right:13px;bottom:14px;gap:8px}.contact-float__item{width:50px;height:50px}.contact-float__item span{font-size:20px}.contact-float__item b{font-size:7px}}
.contact-float__item img{width:34px;height:34px;object-fit:cover;border-radius:50%;display:block}.contact-float__item--phone img{background:#fff;padding:5px}.contact-float__item--zalo img{background:#fff;padding:2px}
.homeq-chatbot__toggle{padding:0!important;overflow:hidden;background:transparent!important;border:2px solid #fff!important}.homeq-chatbot__toggle img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block;background:transparent;padding:0}.homeq-chatbot__toggle b{display:none}
.contact-float{right:20px;bottom:104px;gap:10px}.contact-float__item{width:78px;height:78px;border:2px solid rgba(255,255,255,.96);border-radius:50%;background:rgba(248,255,249,.94);color:#00764b;box-shadow:0 0 0 5px rgba(255,255,255,.35),0 10px 28px rgba(0,95,58,.22);gap:4px}.contact-float__item:hover{transform:translateY(-3px) scale(1.04);box-shadow:0 0 0 6px rgba(175,255,216,.45),0 14px 32px rgba(0,95,58,.3)}.contact-float__item img{width:47px;height:47px;border-radius:50%;padding:4px}.contact-float__item--phone img{background:#0a9a61}.contact-float__item--zalo img{background:#fff;padding:2px}.contact-float__item b{color:#00764b;font-size:11px;font-weight:800}.homeq-chatbot{right:20px;bottom:20px}.homeq-chatbot__toggle{width:78px;height:78px;padding:5px;flex-direction:column;gap:4px;border:2px solid rgba(255,255,255,.96);border-radius:50%;background:rgba(248,255,249,.94);color:#00764b;box-shadow:0 0 0 5px rgba(255,255,255,.35),0 10px 28px rgba(0,95,58,.22)}.homeq-chatbot__toggle:hover{background:#fff;color:#00764b}.homeq-chatbot__toggle span{width:47px;height:47px;border:0;background:#0a9a61;color:#fff;font-size:23px}.homeq-chatbot__toggle b{font-size:11px;color:#00764b}.homeq-chatbot__panel{bottom:88px}@media(max-width:760px){.contact-float{right:13px;bottom:91px;gap:8px}.contact-float__item{width:66px;height:66px}.contact-float__item img{width:39px;height:39px}.contact-float__item b{font-size:9px}.homeq-chatbot{right:13px;bottom:14px}.homeq-chatbot__toggle{width:66px;height:66px}.homeq-chatbot__toggle span{width:39px;height:39px;font-size:19px}.homeq-chatbot__toggle b{font-size:9px}.homeq-chatbot__panel{bottom:76px}}
.homeq-chatbot{position:fixed;z-index:79;right:20px;bottom:154px;font-family:inherit}.homeq-chatbot__toggle{display:flex;align-items:center;gap:8px;padding:11px 15px;border:0;border-radius:999px;background:linear-gradient(135deg,#008c4f,#00683e);color:#fff;box-shadow:0 10px 24px rgba(0,55,34,.28);cursor:pointer}.homeq-chatbot__toggle span{display:grid;width:23px;height:23px;place-items:center;border:1px solid rgba(255,255,255,.7);border-radius:50%;font-size:14px}.homeq-chatbot__toggle b{font-size:11px}.homeq-chatbot__panel{position:absolute;right:0;bottom:52px;width:min(360px,calc(100vw - 28px));overflow:hidden;border:1px solid rgba(0,140,79,.25);border-radius:18px;background:#f7fbf7;box-shadow:0 18px 50px rgba(9,48,30,.28)}.homeq-chatbot__panel[hidden]{display:none}.homeq-chatbot__panel header{display:flex;align-items:center;justify-content:space-between;padding:15px 17px;background:linear-gradient(135deg,#006d45,#008c4f);color:#fff}.homeq-chatbot__panel header strong,.homeq-chatbot__panel header small{display:block}.homeq-chatbot__panel header strong{font-size:14px}.homeq-chatbot__panel header small{margin-top:3px;color:#c9f6d9;font-size:9px}.homeq-chatbot__close{border:0;background:transparent;color:#fff;font-size:24px;line-height:1;cursor:pointer}.homeq-chatbot__messages{display:flex;max-height:290px;min-height:150px;flex-direction:column;gap:9px;overflow:auto;padding:14px;background:#eef8f0}.homeq-chatbot__message{max-width:88%;padding:9px 11px;border-radius:12px;color:#20392b;font-size:11px;line-height:1.5;white-space:pre-wrap}.homeq-chatbot__message.is-bot{align-self:flex-start;border:1px solid #cfe6d5;background:#fff}.homeq-chatbot__message.is-user{align-self:flex-end;background:#008c4f;color:#fff}.homeq-chatbot__message.is-loading{opacity:.65}.homeq-chatbot__suggestions{display:flex;flex-wrap:wrap;gap:6px;padding:10px 12px 0;background:#fff}.homeq-chatbot__suggestions button{padding:6px 9px;border:1px solid #b5d8c0;border-radius:999px;background:#f4fbf5;color:#006f43;font-size:9px;cursor:pointer}.homeq-chatbot__form{display:flex;gap:7px;padding:12px;background:#fff}.homeq-chatbot__form input{min-width:0;flex:1;border:1px solid #c5d8ca;border-radius:999px;padding:10px 13px;outline:0;font:inherit;font-size:11px}.homeq-chatbot__form input:focus{border-color:#008c4f;box-shadow:0 0 0 3px rgba(0,140,79,.1)}.homeq-chatbot__form>button{width:38px;border:0;border-radius:50%;background:#008c4f;color:#fff;font-size:20px;cursor:pointer}@media(max-width:760px){.homeq-chatbot{right:13px;bottom:128px}.homeq-chatbot__toggle{padding:9px 12px}.homeq-chatbot__toggle b{font-size:10px}.homeq-chatbot__panel{bottom:47px}}
.why-showcase{aspect-ratio:16 / 9;min-height:0;height:auto;border-radius:24px}
.why-showcase .why-intro{display:none}

/* Benefits section: image-ready editorial collage. */
.benefits{position:relative;isolation:isolate;grid-template-columns:minmax(330px,.72fr) minmax(0,1.55fr);gap:72px;align-items:center;max-width:1800px;margin:0 auto;padding:98px 6.3% 106px;background:radial-gradient(circle at 62% 44%,rgba(172,220,188,.2),transparent 34%),#f8fbf7;overflow:hidden}
.benefits:before{content:"";position:absolute;z-index:-1;width:760px;height:760px;right:20%;top:50%;transform:translateY(-50%);border:1px solid rgba(66,137,91,.08);border-radius:50%;box-shadow:0 0 0 110px rgba(66,137,91,.025),0 0 0 220px rgba(66,137,91,.018);pointer-events:none}
.benefits-copy{position:relative;z-index:2;max-width:430px}
.benefits .overline{margin-bottom:22px;color:#00874e;font-size:14px;font-weight:800;letter-spacing:3px}
.benefits h2{margin:0;color:#14251d;font-size:clamp(36px,4.2vw,70px);font-weight:500;line-height:1.28;letter-spacing:-2px}
.benefits h2 em{display:inline-block;color:#008c50;font-size:1em;font-style:normal;font-weight:850;line-height:1.08;letter-spacing:-3px;margin-bottom:6px}
.benefits-copy>p:not(.overline){max-width:390px;margin:27px 0 31px;color:#687971;font-size:15px;line-height:1.55}
.benefit-list{max-width:none;padding:0;margin:0;gap:11px}
.benefit-list li{position:relative;display:flex;align-items:center;min-height:58px;padding:0 60px 0 82px;border:1px solid rgba(86,142,103,.32);border-radius:17px;background:rgba(255,255,255,.62);color:#20372b;font-size:15px;font-weight:700;letter-spacing:.02em;transition:transform .3s var(--ease),background .3s,border-color .3s}
.benefit-list li:first-child{border-color:rgba(78,168,111,.32);background:linear-gradient(90deg,#e3f4e7,#f7fcf8)}
.benefit-list li>span{position:absolute;left:0;top:50%;width:58px;height:58px;transform:translateY(-50%);display:grid;place-items:center;border:4px solid #f8fbf7;border-radius:50%;background:#009458;color:#fff;font-size:25px;line-height:1;box-shadow:0 8px 18px rgba(0,116,67,.16)}
.benefit-list li:after{content:"→";position:absolute;right:15px;top:50%;width:34px;height:34px;transform:translateY(-50%);display:grid;place-items:center;border:1px solid #73c393;border-radius:50%;color:#008c50;font-size:22px;font-weight:400}
.benefit-list li:first-child:after{border-color:#008c50;background:#008c50;color:#fff}
.benefits-collage{position:relative;z-index:1;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:285px 275px;gap:18px;align-self:center}
.benefits-collage .image-placeholder{position:relative;grid-column:span 2;min-height:0;height:auto;overflow:hidden;border:1px solid rgba(67,126,84,.14);border-radius:27px;background:linear-gradient(135deg,#eef7ed,#dcebd7);box-shadow:0 16px 34px rgba(20,75,43,.1);transition:transform .4s var(--ease),box-shadow .4s var(--ease)}
.benefits-collage .image-placeholder:nth-child(-n+3){grid-column:span 2}
.benefits-collage .image-placeholder:nth-child(3){grid-column:span 2}
.benefits-collage .image-placeholder:nth-child(n+4){grid-column:span 3}
.benefits-collage .image-placeholder:before,.benefits-collage .image-placeholder:after{opacity:.55}
.benefits-collage .image-placeholder:before{display:none}
.benefits-collage .image-placeholder:after{content:"";z-index:1;inset:38% 0 0;width:auto;height:auto;border:0;transform:none;background:linear-gradient(180deg,rgba(0,28,17,0),rgba(0,25,16,.78) 78%,rgba(0,21,13,.88));pointer-events:none}
.benefits-collage .image-placeholder small{position:absolute;z-index:2;right:20px;bottom:17px;left:20px;padding:0;color:#71907a;font-size:9px;font-weight:800;letter-spacing:1.6px;text-align:center}
.benefits-collage .image-placeholder:has(img)>small{display:block!important;color:#fff;text-shadow:0 2px 12px rgba(0,35,22,.75)}
.benefits-collage .image-placeholder:has(img)>small{font-size:0;letter-spacing:0;text-align:left;line-height:1.25}
.benefits-collage .image-placeholder:has(img)>small{right:0;bottom:0;left:0;padding:16px 20px 17px;background:rgba(0,38,24,.74);border-top:1px solid rgba(255,255,255,.16);text-shadow:0 2px 5px rgba(0,0,0,.55)}
.benefits-collage .image-placeholder:has(img)>small:before,.benefits-collage .image-placeholder:has(img)>small:after{display:block}
.benefits-collage [data-image-slot="benefit-1"]>small:before{content:"SANG TRỌNG, ĐẲNG CẤP"}
.benefits-collage [data-image-slot="benefit-2"]>small:before{content:"TIẾT KIỆM NĂNG LƯỢNG"}
.benefits-collage [data-image-slot="benefit-3"]>small:before{content:"AN NINH, AN TOÀN"}
.benefits-collage [data-image-slot="benefit-4"]>small:before{content:"QUẢN LÝ ĐỒNG BỘ"}
.benefits-collage [data-image-slot="benefit-5"]>small:before{content:"ĐỒNG HÀNH DÀI LÂU"}
.benefits-collage [data-image-slot="benefit-1"]>small:after{content:"Không gian tinh tế, khác biệt và xứng tầm"}
.benefits-collage [data-image-slot="benefit-2"]>small:after{content:"Tối ưu vận hành, giảm tiêu hao mỗi ngày"}
.benefits-collage [data-image-slot="benefit-3"]>small:after{content:"Bảo vệ gia đình chủ động mọi lúc, mọi nơi"}
.benefits-collage [data-image-slot="benefit-4"]>small:after{content:"Điều khiển và quản lý toàn bộ hệ thống"}
.benefits-collage [data-image-slot="benefit-5"]>small:after{content:"Bảo hành, bảo trì và hỗ trợ bền vững"}
.benefits-collage .image-placeholder:has(img)>small:before{font-size:clamp(14px,1.35vw,22px);font-weight:850;letter-spacing:.02em;margin-bottom:7px}
.benefits-collage .image-placeholder:has(img)>small:after{font-size:clamp(9px,.85vw,14px);font-weight:500;letter-spacing:0}
.benefits-collage .image-symbol{position:relative;z-index:1;color:#a2bea7;font-size:32px}
.benefits-collage .image-placeholder:hover{transform:translateY(-6px);box-shadow:0 25px 44px rgba(20,75,43,.16)}
@media(max-width:1100px){.benefits{grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr);gap:38px;padding-top:75px;padding-bottom:80px}.benefits h2{font-size:clamp(32px,4vw,52px)}.benefits-copy>p:not(.overline){font-size:13px}.benefit-list li{min-height:52px;padding-left:68px;font-size:12px}.benefit-list li>span{width:52px;height:52px}.benefits-collage{grid-template-rows:235px 215px;gap:12px}.benefits-collage .image-placeholder{border-radius:21px}}
@media(max-width:760px){.benefits{grid-template-columns:1fr;gap:34px;padding:62px 6% 70px}.benefits:before{right:-55%;width:620px;height:620px}.benefits-copy{max-width:none}.benefits .overline{margin-bottom:15px;font-size:11px}.benefits h2{font-size:39px;line-height:1.25;letter-spacing:-1.5px}.benefits h2 em{line-height:1.08;letter-spacing:-2px;margin-bottom:8px}.benefits-copy>p:not(.overline){margin:18px 0 25px;font-size:12px}.benefit-list{gap:10px}.benefit-list li{min-height:52px;padding-left:68px;border-radius:15px;font-size:12px}.benefit-list li>span{width:52px;height:52px}.benefit-list li:after{right:12px;width:29px;height:29px;font-size:18px}.benefits-collage{grid-template-rows:180px 170px;gap:10px}.benefits-collage .image-placeholder{border-radius:17px}.benefits-collage .image-placeholder small{right:8px;bottom:12px;left:8px;font-size:7px;letter-spacing:1px}}

/* Smooth automatic solution carousel transition. */
@keyframes solutionCardsInNext{from{opacity:.2;translate:90px 0}to{opacity:1;translate:0 0}}
@keyframes solutionCardsInPrev{from{opacity:.2;translate:-90px 0}to{opacity:1;translate:0 0}}
.solution-cards[data-direction="next"] .solution-card{animation:solutionCardsInNext 2.5s cubic-bezier(.16,.78,.22,1) both}
.solution-cards[data-direction="prev"] .solution-card{animation:solutionCardsInPrev 2.5s cubic-bezier(.16,.78,.22,1) both}
.solution-cards[data-direction="next"] .solution-card:nth-child(2),.solution-cards[data-direction="prev"] .solution-card:nth-child(2){animation-delay:.05s}
@media(prefers-reduced-motion:reduce){.solution-cards[data-direction="next"] .solution-card,.solution-cards[data-direction="prev"] .solution-card{animation:none!important}}

/* Final solution carousel layout: keep the photo, overlay and floating disc in
   separate layers so late legacy styles cannot crop or cover the card content. */
.solutions{padding-top:38px!important;padding-bottom:76px!important}
.solutions .center-heading{margin-bottom:20px}
.solution-carousel{max-width:1720px;padding:0 74px}
.solution-cards{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr) minmax(0,1fr);gap:34px;align-items:end;min-height:0;padding-top:48px}
.solution-card,.solution-card.featured{display:flex;min-height:415px!important;padding:137px 30px 25px!important;overflow:visible!important;border:0!important;border-radius:27px!important;background:#00633a!important;box-shadow:0 20px 46px rgba(9,72,45,.16)!important;isolation:isolate}
.solution-card.featured{min-height:430px!important;transform:translateY(-12px)!important}
.solution-card .solution-photo.image-placeholder{position:absolute!important;z-index:0!important;inset:0!important;width:auto!important;height:auto!important;min-height:0!important;overflow:hidden;border:0!important;border-radius:27px!important;box-shadow:none!important}
.solution-card:after{z-index:1!important;background:linear-gradient(90deg,rgba(0,60,35,.96) 0%,rgba(0,95,55,.82) 49%,rgba(0,57,34,.22) 100%)!important}
.solution-number{z-index:3!important;top:24px!important;left:24px!important}
.solution-icon{z-index:5!important;top:-66px!important;right:26px!important;left:auto!important;display:grid!important;place-items:center!important;width:132px!important;height:132px!important;transform:none!important;border:8px solid rgba(255,255,255,.9)!important;border-radius:50%!important;background:radial-gradient(circle at 32% 27%,#eff9ec,#b8dcae 66%,#8abc85)!important;box-shadow:0 18px 38px rgba(14,77,45,.18)!important}
.solution-icon .morph-icon{width:47px!important;height:47px!important}
.solution-icon:after{content:attr(data-label);position:absolute;right:14px;bottom:15px;left:14px;color:#176340;font-size:6px;font-weight:800;line-height:1.35;letter-spacing:.15px;text-align:center;text-transform:uppercase}
.solution-kicker{z-index:3!important;top:121px!important;left:30px!important;color:#b8dfc3!important}
.solution-card h3{z-index:3!important;max-width:270px!important;margin:23px 0 14px!important;color:#fff!important;font-size:clamp(27px,2vw,37px)!important;line-height:1.06!important}
.solution-card p:not(.solution-kicker){z-index:3!important;max-width:280px!important;min-height:0!important;color:#ecfff1!important;font-size:14px!important;line-height:1.5!important}
.solution-card>a{z-index:3!important;align-self:flex-start!important;margin-top:auto!important;padding:11px 13px 11px 20px!important;border:0!important;border-radius:999px!important;background:#f5fff6!important;color:#087244!important}
.solution-card>a span{width:34px!important;height:34px!important;background:#009252!important;color:#fff!important}
.carousel-arrow{z-index:6!important;top:54%!important;transform:translateY(-50%)!important}.carousel-arrow:hover{transform:translateY(-50%) scale(1.08)!important}
@media(max-width:1100px){.solution-carousel{padding:0 53px}.solution-cards{gap:20px}.solution-card,.solution-card.featured{min-height:390px!important;padding:124px 21px 21px!important}.solution-card.featured{transform:none!important}.solution-icon{width:112px!important;height:112px!important;top:-56px!important}.solution-icon .morph-icon{width:40px!important;height:40px!important}.solution-icon:after{right:10px;bottom:11px;left:10px;font-size:5px}.solution-kicker{top:105px!important;left:21px!important}.solution-card h3{font-size:27px!important}.solution-card p:not(.solution-kicker){font-size:12px!important}}
@media(max-width:760px){.solution-carousel{padding:0 35px}.solution-cards{display:block;padding-top:58px}.solution-card:not(.featured){display:none}.solution-card.featured{display:flex;min-height:375px!important;max-width:430px;margin:auto;padding:124px 23px 23px!important}.solution-icon{width:118px!important;height:118px!important;top:-58px!important}.solution-kicker{top:107px!important;left:23px!important}.solution-card h3{font-size:30px!important}.solution-card p:not(.solution-kicker){font-size:13px!important}.carousel-arrow{top:54%!important}}

/* Image-led solution carousel, based on the three-card art direction. */
.solutions{padding-top:94px!important;padding-bottom:88px!important;background:radial-gradient(circle at 50% 43%,rgba(186,229,199,.22),transparent 33%),#f9fcf9}.solutions:before{width:820px;height:820px;top:40%;opacity:.9}.solutions .center-heading{max-width:820px;margin:0 auto 44px;text-align:center}.solutions .center-heading h2{font-size:clamp(29px,3.1vw,49px);line-height:1.13;letter-spacing:-2px}.solutions .center-heading>p:not(.overline){max-width:620px;margin:14px auto 0;color:#718079;font-size:15px;line-height:1.55}.solution-carousel{max-width:1680px;margin:auto;padding:0 76px}.solution-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;align-items:stretch;min-height:0;padding-top:68px}.solution-card,.solution-card.featured{position:relative;display:flex;flex-direction:column;min-height:416px!important;padding:138px 29px 25px!important;overflow:hidden;border:0!important;border-radius:27px;background:#00663c!important;box-shadow:0 20px 46px rgba(9,72,45,.16)!important;transform:none!important;isolation:isolate}.solution-card:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(0,62,37,.97) 0%,rgba(0,91,53,.83) 45%,rgba(0,55,34,.18) 100%)}.solution-card:hover{transform:translateY(-7px)!important;box-shadow:0 28px 58px rgba(9,72,45,.23)!important}.solution-card .solution-photo.image-placeholder{position:absolute;z-index:-2;inset:0;width:auto!important;height:auto!important;min-height:0!important;border:0!important;border-radius:0!important;background:#0a5637!important;box-shadow:none!important}.solution-photo:before,.solution-photo:after{display:none!important}.solution-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.9) contrast(1.04)}.solution-card:nth-child(2) .solution-photo img{object-position:center}.solution-card .solution-photo small{display:none}.solution-number{z-index:2;top:24px;left:24px;padding:8px 15px;border:1px solid rgba(255,255,255,.2);background:rgba(89,158,113,.5);color:#eaffef;font-size:12px;font-weight:800}.solution-icon{position:absolute;z-index:3;top:-66px;left:50%;width:132px;height:132px;transform:translateX(-50%);border:8px solid rgba(255,255,255,.88);border-radius:50%;background:radial-gradient(circle at 32% 27%,#eff9ec,#b8dcae 66%,#8abc85);box-shadow:0 18px 38px rgba(14,77,45,.18);color:#00663c}.solution-icon .morph-icon{width:47px;height:47px}.solution-kicker{position:absolute;z-index:1;top:122px;left:29px;margin:0!important;color:#b8dfc3!important;font-size:9px!important}.solution-card h3{position:relative;z-index:1;max-width:255px;margin:24px 0 14px;color:#fff;font-size:clamp(28px,2.05vw,38px);font-weight:850;line-height:1.05;letter-spacing:-1.5px}.solution-card p:not(.solution-kicker){position:relative;z-index:1;max-width:270px;min-height:0!important;margin:0;color:#ebfff0;font-size:14px;line-height:1.5}.solution-card>a{position:relative;z-index:1;align-self:flex-start;margin-top:auto;padding:11px 13px 11px 20px;border-radius:999px;background:#f5fff6;color:#087244;font-size:13px;font-weight:800}.solution-card>a span{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:#009252;color:#fff;font-size:18px}.solution-card>a .morph-icon{width:19px;height:19px}.carousel-arrow{top:50%;width:54px;height:54px;transform:translateY(-8%);background:#008c50!important;color:#fff;box-shadow:0 13px 28px rgba(0,88,49,.2)}.carousel-arrow:hover{transform:translateY(-8%) scale(1.08)!important}.carousel-arrow.prev{left:0}.carousel-arrow.next{right:0}.carousel-status{position:relative;margin-top:34px;font-size:0}.carousel-status:before{content:"";display:inline-block;width:38px;height:6px;border-radius:999px;background:#008c50;box-shadow:-31px 0 0 #b8ddc3,31px 0 0 #b8ddc3}
@media(max-width:1100px){.solution-carousel{padding:0 56px}.solution-cards{gap:20px}.solution-card,.solution-card.featured{min-height:380px!important;padding:125px 20px 20px!important}.solution-icon{width:112px;height:112px;top:-56px}.solution-icon .morph-icon{width:40px;height:40px}.solution-kicker{top:107px;left:20px}.solution-card h3{font-size:27px}.solution-card p:not(.solution-kicker){font-size:12px}.solution-card>a{font-size:12px}}
@media(max-width:760px){.solutions{padding-top:64px!important;padding-bottom:62px!important}.solutions .center-heading{margin-bottom:30px}.solutions .center-heading h2{font-size:28px;letter-spacing:-1px}.solutions .center-heading>p:not(.overline){font-size:12px}.solution-carousel{padding:0 35px}.solution-cards{display:block;padding-top:58px}.solution-card:not(.featured){display:none}.solution-card.featured{display:flex;min-height:375px!important;max-width:430px;margin:auto;padding:124px 23px 23px!important}.solution-icon{width:118px;height:118px;top:-58px}.solution-kicker{top:107px;left:23px}.solution-card h3{font-size:30px}.solution-card p:not(.solution-kicker){font-size:13px}.carousel-arrow{top:54%;width:39px;height:39px}.carousel-status{margin-top:29px}}

.audience-photo-slot--filled:before{display:none}.audience-photo-slot--filled img{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.94) contrast(1.03)}.audience-photo-slot--filled small{position:absolute;right:13px;bottom:12px;padding:6px 9px;border-radius:999px;background:rgba(4,48,31,.78);color:#fff;font-size:8px;letter-spacing:.9px}

/* Audience stages: photo-ready cards. Images are intentionally left as replaceable slots. */
.audience{position:relative;padding-top:92px!important;padding-bottom:104px!important;background:radial-gradient(circle at 50% 30%,rgba(145,213,168,.16),transparent 34%),#f8fbf8;isolation:isolate;overflow:hidden}
.audience:before{display:none!important}.audience .corner-cta{display:none}.audience-heading{max-width:820px;margin:0 auto 52px;text-align:center}.audience-heading .overline{margin:0 0 12px;color:#008950;font-size:11px;font-weight:800;letter-spacing:5px}.audience-heading h2{margin:0;color:#13231c;font-size:clamp(30px,3vw,51px);font-weight:850;line-height:1.08;letter-spacing:-2px}.audience-heading h2 em{font-style:normal;color:#008d50}.audience-heading>p:last-child{max-width:670px;margin:16px auto 0;color:#718079;font-size:15px;line-height:1.55}
.audience .audience-contact{display:block;position:absolute;top:30px;right:clamp(24px,6vw,130px);z-index:4}.audience-contact .button{min-height:40px;padding:8px 14px;font-size:11px;gap:10px}.audience-contact .button .morph-icon{width:17px;height:17px}
.audience-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:22px!important;max-width:1540px!important;margin:0 auto!important}.audience-card{min-width:0;padding:0!important;overflow:hidden;border:1px solid #e6eee8!important;border-radius:25px!important;background:#fff!important;box-shadow:0 18px 38px rgba(19,68,43,.1)!important;transition:transform .35s ease,box-shadow .35s ease!important}.audience-card:hover{transform:translateY(-7px)!important;box-shadow:0 27px 52px rgba(19,68,43,.16)!important}
.audience-image{position:relative;height:260px;overflow:hidden}.audience-image>.audience-photo-slot.image-placeholder{height:100%!important;min-height:0!important;border:0!important;border-radius:0!important;background:linear-gradient(135deg,#eff8ef,#d7e9d4)!important}.audience-photo-slot:before{content:"";position:absolute;inset:12px;border:1px dashed rgba(0,113,65,.22);border-radius:16px}.audience-photo-slot .image-symbol{position:relative;z-index:1;color:#6e9a77;font-size:34px}.audience-photo-slot small{position:relative;z-index:1;color:#60836a;font-size:10px;font-weight:800;letter-spacing:1.2px}.audience-image .small-badge{position:absolute!important;z-index:3;top:15px;left:15px;padding:8px 12px;border-radius:999px;background:#075a3b;color:#fff;font-size:10px;font-weight:800;letter-spacing:.8px}.audience-card .star-badge{display:none}
.audience-card-content{position:relative;display:grid;grid-template-columns:62px minmax(0,1fr) 44px;column-gap:15px;align-items:center;padding:20px 21px 19px}.audience-card-icon{display:grid;width:62px;height:62px;grid-row:span 2;place-items:center;border-radius:15px;background:#e5f7ea;color:#008c50}.audience-card-icon .morph-icon{width:28px;height:28px}.audience-card-content h3{max-width:none!important;margin:0;color:#14251d;font-size:17px;font-weight:850;line-height:1.15;letter-spacing:-.55px}.audience-lead{margin:5px 0 0;color:#688078;font-size:12px;font-weight:600;line-height:1.35}.audience-select{display:grid;width:44px;height:44px;place-items:center;border-radius:50%;background:#008c50;color:#fff;box-shadow:0 10px 18px rgba(0,126,72,.19);transition:transform .25s ease,background .25s ease}.audience-select:hover{background:#006c3e;transform:translateX(3px)}.audience-select .morph-icon{width:21px;height:21px}.audience-description{grid-column:2 / -1;margin:11px 0 0;color:#67746e;font-size:11px;line-height:1.55}.audience-card details,.audience-card .audience-teaser{display:none}
@media(max-width:1050px){.audience-grid{gap:17px!important}.audience-image{height:215px}.audience-card-content{grid-template-columns:54px minmax(0,1fr) 40px;padding:17px}.audience-card-icon{width:54px;height:54px}.audience-select{width:40px;height:40px}.audience-card-content h3{font-size:15px}.audience-lead{font-size:11px}.audience-description{font-size:10px}}
@media(max-width:780px){.audience{padding-top:62px!important;padding-bottom:65px!important}.audience-heading{margin-bottom:32px}.audience-heading h2{font-size:31px;letter-spacing:-1.2px}.audience-heading>p:last-child{font-size:13px}.audience-grid{grid-template-columns:1fr!important;max-width:520px!important}.audience-image{height:250px}.audience-card-content{grid-template-columns:62px minmax(0,1fr) 44px;padding:20px}.audience-card-icon{width:62px;height:62px}.audience-select{width:44px;height:44px}.audience-card-content h3{font-size:17px}.audience-lead{font-size:12px}.audience-description{font-size:11px}}
@media(max-width:780px){.audience .audience-contact{position:static;display:flex;justify-content:flex-end;margin:0 0 26px}.audience-contact .button{min-height:37px;font-size:10px}.audience-heading{margin-top:0}}
@media(max-width:460px){.audience-heading h2{font-size:27px}.audience-heading .overline{font-size:9px;letter-spacing:3px}.audience-image{height:205px}.audience-card-content{grid-template-columns:52px minmax(0,1fr) 38px;column-gap:12px;padding:15px}.audience-card-icon{width:52px;height:52px}.audience-card-icon .morph-icon{width:24px;height:24px}.audience-select{width:38px;height:38px}.audience-card-content h3{font-size:14px}.audience-lead{font-size:10px}.audience-description{font-size:10px}}

/* Morphicons + Lucide icon system */
morph-icon.morph-icon{display:inline-grid;width:1em;height:1em;place-items:center;vertical-align:middle;line-height:1}
morph-icon.morph-icon svg{display:block;width:100%;height:100%;overflow:visible;stroke:currentColor;fill:none;stroke-linecap:round;stroke-linejoin:round}
.concern-icon .morph-icon{width:31px;height:31px}.concern-image figcaption i .morph-icon{width:29px;height:29px}
.why-icon .morph-icon{width:24px;height:24px}.package-icon .morph-icon{width:28px;height:28px}.solution-icon .morph-icon{width:31px;height:31px}.device-icon .morph-icon{width:21px;height:21px}
.room-chip>span .morph-icon{width:22px;height:22px}.benefit-list li>span .morph-icon{width:19px;height:19px}.form-note>.morph-icon{width:14px;height:14px}
.button .morph-icon--arrow,.inline-link .morph-icon--arrow{width:1.14em;height:1.14em}.concerns-copy li>b .morph-icon--arrow{width:21px;height:21px}.carousel-arrow .morph-icon--arrow,.circle-button .morph-icon--arrow{width:23px;height:23px}
.menu-toggle{padding:0}.menu-toggle>span{display:none}.menu-toggle .morph-icon--menu{width:20px;height:20px}
.header nav a:hover .morph-icon,.concerns-copy li:hover .morph-icon,.concern-image:hover .morph-icon,.why-card:hover .morph-icon{filter:drop-shadow(0 4px 7px rgba(0,121,67,.25))}

/* Keep the three-photo concerns collage tall and visually balanced. */
@media (min-width:1251px){
  .concerns-layout{grid-template-columns:minmax(0,.96fr) minmax(650px,1.2fr)}
  .concerns-collage{grid-template-columns:1.28fr 1fr;height:clamp(650px,42vw,735px);gap:19px}
  .concern-image{border-radius:28px}
  .concern-image figcaption{min-height:120px;padding:23px 26px}
}
@media (min-width:701px) and (max-width:1250px){
  .concerns-collage{height:620px}
}

/* Align the consultation CTA with the full width of the question cards. */
.concerns-copy .button{display:inline-flex;width:auto;justify-content:center}

/* Give the three-image collage a wider, more balanced landscape proportion. */
@media (min-width:1251px){
  .concerns-layout{grid-template-columns:minmax(0,.75fr) minmax(620px,1.35fr);gap:38px}
  .concerns-collage{grid-template-columns:1.34fr 1fr;height:clamp(500px,34vw,585px)}
}
@media (min-width:701px) and (max-width:1250px){
  .concerns-collage{height:520px}
}

/* User-supplied living-space photograph for the main concerns collage frame. */
.concern-image--main img{
  content:url("assets/concern-living-space.png");
  object-position:52% center;
}

/* High-contrast colour treatment for the three image labels. */
.concern-image figcaption{background:linear-gradient(0deg,rgba(7,18,13,.92),rgba(7,18,13,.55) 62%,transparent)}
.concern-image figcaption strong{color:#fff!important;font-family:inherit!important;font-weight:800!important;text-shadow:0 2px 10px rgba(0,0,0,.45)}
.concern-image figcaption span{color:rgba(255,255,255,.9)!important;font-family:inherit!important;font-weight:500!important;text-shadow:0 1px 7px rgba(0,0,0,.52)}

/* Concerns redesign — photo-led consultation layout */
.concerns{padding-top:108px;padding-bottom:108px;background:radial-gradient(circle at 54% 46%,rgba(135,211,160,.14),transparent 35%),#f8fbf7}
.concerns-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(570px,1.12fr);gap:46px;align-items:center;max-width:1700px;margin:0 auto}.concerns-copy{max-width:790px}
.concerns-kicker{display:flex;align-items:center;gap:11px;margin:0 0 20px;color:#007b49;font-size:.78rem;font-weight:800;letter-spacing:.38em}.concerns-kicker:before{width:64px;height:2px;background:#008d54;content:""}.concerns-kicker span{color:#77a88e;font-weight:650}
.concerns-copy h2{max-width:760px;margin:0 0 34px;color:#172820;font-size:clamp(2.4rem,3.35vw,4.4rem);line-height:.99;letter-spacing:-.055em}.concerns-copy h2 em{display:block;color:#008d50;font-style:normal}.concerns-copy ol{display:grid;gap:15px;margin:0;padding:0;list-style:none}
.concerns-copy li{display:grid;grid-template-columns:68px minmax(0,1fr) 46px;gap:19px;align-items:center;min-height:106px;padding:17px 22px 17px 18px;border:1px solid rgba(216,237,223,.94);border-radius:25px;background:rgba(255,255,255,.88);box-shadow:0 15px 35px rgba(24,79,47,.07)}
.concern-icon{display:grid;width:65px;height:65px;place-items:center;border-radius:18px;background:linear-gradient(135deg,#dff7e5,#effbf2);color:#008b50;font-size:2.25rem;font-weight:700;line-height:1}.concerns-copy li p{margin:0;color:#42564b;font-size:1rem;line-height:1.48}.concerns-copy li strong{color:#007d48;font-weight:800}.concerns-copy li>b{display:grid;width:43px;height:43px;place-items:center;border-radius:50%;background:#e4f7e9;color:#196f45;font-size:1.35rem;font-weight:500}.concerns-copy .button{min-width:238px;margin-top:23px;border-radius:999px}
.concerns-collage{display:grid;grid-template-columns:1.23fr 1fr;grid-template-rows:repeat(2,minmax(0,1fr));gap:16px;height:566px}.concern-image{position:relative;min-height:0;margin:0;overflow:hidden;border-radius:24px;background:#dce9df;box-shadow:0 18px 35px rgba(24,66,42,.11);isolation:isolate}.concern-image--main{grid-row:span 2}.concern-image img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease}.concern-image--main img{object-position:54% center}.concern-image:nth-child(2) img{object-position:center}.concern-image:nth-child(3) img{object-position:center}.concern-image:hover img{transform:scale(1.045)}
.concern-image figcaption{position:absolute;right:0;bottom:0;left:0;z-index:1;display:flex;align-items:center;gap:15px;min-height:103px;padding:19px 22px;background:linear-gradient(0deg,rgba(8,26,18,.83),rgba(8,26,18,.48) 62%,transparent);color:#fff}.concern-image figcaption i{display:grid;width:54px;height:54px;flex:0 0 54px;place-items:center;border-radius:16px;background:rgba(255,255,255,.95);color:#008a4f;font-size:1.85rem;font-style:normal;font-weight:800}.concern-image figcaption p{display:grid;gap:4px;margin:0}.concern-image figcaption strong{font-size:1.16rem;letter-spacing:-.02em}.concern-image figcaption span{color:rgba(255,255,255,.9);font-size:.91rem}
@media(max-width:1250px){.concerns-layout{grid-template-columns:1fr;max-width:920px}.concerns-copy{max-width:none}.concerns-collage{height:515px}}
@media(max-width:700px){.concerns{padding-top:70px;padding-bottom:70px}.concerns-layout{gap:32px}.concerns-kicker{font-size:.65rem;letter-spacing:.25em}.concerns-kicker:before{width:36px}.concerns-copy h2{margin-bottom:25px;font-size:clamp(2.15rem,11vw,3.15rem)}.concerns-copy li{grid-template-columns:52px minmax(0,1fr) 35px;gap:12px;min-height:0;padding:14px;border-radius:20px}.concern-icon{width:51px;height:51px;border-radius:15px;font-size:1.75rem}.concerns-copy li p{font-size:.89rem;line-height:1.42}.concerns-copy li>b{width:34px;height:34px;font-size:1.12rem}.concerns-collage{gap:10px;height:415px}.concern-image{border-radius:18px}.concern-image figcaption{min-height:0;gap:9px;padding:11px}.concern-image figcaption i{width:36px;height:36px;flex-basis:36px;border-radius:11px;font-size:1.2rem}.concern-image figcaption strong{font-size:.75rem}.concern-image figcaption span{font-size:.65rem;line-height:1.2}}

/* Keep the large consultation image at the left of the six-card grid. */
@media(min-width:1101px){
  .why-layout{display:grid;grid-template-columns:minmax(390px,.94fr) minmax(610px,1.3fr);gap:28px;align-items:stretch}
  .why-showcase{position:relative;display:block;min-height:548px;overflow:hidden;border-radius:0 170px 24px 24px;background:#edf3ea;box-shadow:0 18px 45px rgba(21,61,43,.08)}
  .why-intro{position:relative;z-index:2;width:67%;min-height:252px;padding:4px 28px 30px 0;display:flex;flex-direction:column;align-items:flex-start;border-radius:0 0 112px 0;background:#f8fbf7}
  .why-intro h3{margin:0;color:#172720;font-size:clamp(25px,2vw,36px);font-weight:800;line-height:1.13;letter-spacing:-1.5px}
  .why-intro p{margin:20px 0 0;color:#53615b;font-size:clamp(13px,1vw,17px);line-height:1.55}
  .why-consult{display:flex;align-items:center;justify-content:space-between;width:210px;min-height:51px;margin-top:25px;padding:0 24px;border-radius:28px;background:#00784b;color:#fff;font-size:15px;font-weight:700;box-shadow:0 12px 26px rgba(0,104,63,.16)}
  .why-consult span{font-size:24px;font-weight:400}.why-main-photo{position:absolute;inset:0}.why-main-photo:after{content:"";position:absolute;inset:38% 0 0;background:linear-gradient(180deg,transparent,rgba(7,45,30,.12))}.why-main-photo img{width:100%;height:100%;object-fit:cover;object-position:center}
  .why-grid{gap:18px}.why-card{min-height:265px;border-radius:23px}.why-photo-slot{height:68%}.why-card-copy{min-height:111px;padding:27px 13px 14px 94px;border-radius:56% 46% 0 0 / 37px 37px 0 0}.why-icon{top:-25px;left:15px;width:61px;height:61px;border-width:5px;font-size:21px}.why-card h3{margin-bottom:5px;font-size:clamp(17px,1.35vw,23px);letter-spacing:-.8px}.why-card h3:after{width:25px;height:2px;margin-top:6px}.why-card p{font-size:clamp(10px,.78vw,13px);line-height:1.32}
}
@media(max-width:1100px){.why-showcase{display:block}}

/* Desktop density: match the balanced composition previously seen at 90% browser zoom. */
@media (min-width:1200px){
  html{zoom:.9}
}

/* ─────────────────────────────────────────────────────────────
   HOMEQ UI SYSTEM — upgraded visual and interaction layer
   ───────────────────────────────────────────────────────────── */
:root{
  --green:#008c4f;
  --green-deep:#004d2c;
  --green-mid:#008c4f;
  --green-bright:#18b86b;
  --mint:#d3f2e4;
  --mint-soft:#e8f7f0;
  --ink:#13231b;
  --muted:#68756c;
  --paper:#f6f8f3;
  --surface:#ffffff;
  --line:#d8e2d3;
  --shadow-sm:0 12px 32px rgba(11,49,34,.08);
  --shadow-lg:0 32px 90px rgba(7,43,29,.17);
  --radius-sm:14px;
  --radius-md:24px;
  --radius-lg:40px;
  --ease:cubic-bezier(.2,.8,.2,1);
}

html{scrollbar-color:var(--green-mid) var(--paper)}
body{
  overflow-x:hidden;
  background:
    radial-gradient(circle at 12% 8%,rgba(184,219,166,.18),transparent 27rem),
    var(--paper);
  letter-spacing:-.012em;
}
body.menu-open{overflow:hidden}
::selection{background:var(--mint);color:var(--green-deep)}

.skip-link{
  position:fixed;z-index:1000;left:20px;top:16px;transform:translateY(-150%);
  padding:10px 16px;border-radius:999px;background:white;color:var(--green-deep);
  box-shadow:var(--shadow-sm);font-size:12px;font-weight:700;
}
.skip-link:focus{transform:translateY(0)}
.scroll-progress{position:fixed;z-index:80;left:0;right:0;top:0;height:3px;background:transparent;pointer-events:none}
.scroll-progress__bar{display:block;width:100%;height:100%;background:linear-gradient(90deg,var(--green-bright),var(--mint));transform:scaleX(0);transform-origin:left center;will-change:transform}

.header{
  min-height:88px;padding-top:12px;padding-bottom:12px;
  background:rgba(246,248,243,.78);border-color:rgba(20,65,45,.08);
  transition:min-height .35s var(--ease),background .35s,box-shadow .35s;
}
.header.is-scrolled{min-height:74px;background:rgba(246,248,243,.94);box-shadow:0 12px 35px rgba(9,43,31,.08)}
.brand-symbol{font-size:46px;color:var(--green-deep);transition:transform .35s var(--ease)}
.brand:hover .brand-symbol{transform:rotate(-4deg) scale(1.04)}
.brand-name{color:var(--green-mid);font-size:15px}
.brand-logo{display:block;width:auto;height:64px;object-fit:contain;transition:transform .35s var(--ease),filter .35s var(--ease)}
.brand:hover .brand-logo{transform:translateY(-2px) scale(1.025);filter:drop-shadow(0 7px 12px rgba(13,62,42,.12))}
.offer .brand-logo{height:112px}
.footer-links .brand-logo{height:96px}
.brand-tagline{font-size:10px;letter-spacing:.18em;color:#365244;white-space:nowrap;flex-shrink:0}
.header nav{gap:30px;font-size:10px;font-weight:700;letter-spacing:.16em;white-space:nowrap;flex-shrink:0}
.header nav a{padding:9px 0;color:#4f6157;transition:color .25s}
.header nav a:hover,.header nav a.active{color:var(--green-deep)}
.header nav a:after{height:1px;bottom:4px;background:var(--green-bright)}
.header nav a.active:after{width:100%}
.header-cta{
  display:inline-flex;align-items:center;gap:14px;padding:9px 10px 9px 18px;border-radius:999px;
  background:var(--green);color:#f4faef;font-size:10px;font-weight:700;letter-spacing:.05em;
  transition:transform .3s var(--ease),box-shadow .3s;white-space:nowrap;flex-shrink:0;
}
.header-cta b{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:var(--mint);color:var(--green-deep);font-size:17px;font-weight:500;transition:transform .3s var(--ease)}
.header-cta:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgba(11,53,37,.18)}
.header-cta:hover b{transform:rotate(45deg)}
.menu-toggle{width:43px;height:43px;border:1px solid var(--line);border-radius:50%;place-items:center;background:rgba(255,255,255,.75)}
.menu-toggle span{display:block;width:17px;height:1px;background:var(--green-deep);margin:4px auto;transition:transform .3s,opacity .3s}
.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(5px) rotate(45deg)}
.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}
.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-5px) rotate(-45deg)}

.section{padding-top:108px;padding-bottom:108px}
.section:nth-of-type(even):not(.hero){background:linear-gradient(180deg,rgba(235,242,229,.42),rgba(246,248,243,0))}
.overline{font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--green-mid)}
.center-heading{max-width:1020px;margin-left:auto;margin-right:auto}
.center-heading h2,.section-heading h2{line-height:1.16;text-wrap:balance}
h2 em{position:relative;color:var(--green-mid)}
h2 em:after{content:'';position:absolute;left:0;right:0;bottom:-5px;height:1px;background:linear-gradient(90deg,transparent,var(--green-bright),transparent);opacity:.6}

.button{
  border-radius:999px;min-height:52px;padding:12px 17px 12px 26px;gap:22px;
  background:var(--green);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);
  font-weight:700;letter-spacing:.03em;transition:transform .3s var(--ease),background .3s,box-shadow .3s;
}
.button>span{display:grid;place-items:center;width:31px;height:31px;margin:-3px -7px -3px 0;border-radius:50%;background:var(--mint);color:var(--green-deep);font-size:17px;transition:transform .3s var(--ease)}
.button:hover{background:var(--green-mid);box-shadow:0 16px 32px rgba(10,54,36,.17);transform:translateY(-3px)}
.button:hover>span{transform:rotate(45deg)}

.image-placeholder{
  isolation:isolate;color:#78927f;border:1px solid rgba(25,81,53,.12);
  background:
    radial-gradient(circle at 72% 22%,rgba(179,218,157,.7),transparent 31%),
    linear-gradient(145deg,#eff5e9,#c8d9c0);
}
.image-placeholder:before{left:-5%;width:52%;height:150%;border-color:rgba(255,255,255,.56);transform:rotate(23deg)}
.image-placeholder:after{left:52%;width:25%;height:140%;border-color:rgba(255,255,255,.35);transform:rotate(23deg)}
.image-placeholder small{font-weight:700;letter-spacing:.16em;opacity:.72}
.image-symbol{width:52px;height:52px;display:grid;place-items:center;border:1px solid rgba(18,72,47,.19);border-radius:50%;font-size:23px;background:rgba(255,255,255,.24)}

.hero{padding:20px 3.2% 58px}
.hero-banner{
  --pointer-x:0;--pointer-y:0;min-height:590px;border-radius:34px;text-align:left;place-items:stretch;
  background:var(--green-deep);box-shadow:var(--shadow-lg);
}
.hero-background{
  background:
    radial-gradient(circle at calc(72% + var(--pointer-x)*4%) calc(25% + var(--pointer-y)*4%),rgba(0,140,79,.42),transparent 30%),
    radial-gradient(circle at 5% 100%,rgba(24,184,107,.2),transparent 29%),
    linear-gradient(128deg,#00351f 0%,#00683b 52%,#003823 100%);
}
.hero-background:after{left:62%;width:22%;border-color:rgba(205,235,186,.07);transform:rotate(28deg)}
.hero-grid{background-size:74px 74px;opacity:.8;mask-image:linear-gradient(90deg,#000 20%,transparent 90%);transform:translate3d(calc(var(--pointer-x)*-8px),calc(var(--pointer-y)*-8px),0);transition:transform .35s var(--ease)}
.hero-glow{position:absolute;z-index:2;width:460px;aspect-ratio:1;right:5%;top:8%;border:1px solid rgba(195,229,174,.14);border-radius:50%;box-shadow:0 0 100px rgba(96,169,98,.12),inset 0 0 80px rgba(193,227,172,.04);transform:translate3d(calc(var(--pointer-x)*14px),calc(var(--pointer-y)*14px),0);transition:transform .35s var(--ease)}
.hero-glow:before,.hero-glow:after{content:'';position:absolute;border-radius:50%;border:1px solid rgba(195,229,174,.1)}
.hero-glow:before{inset:12%}.hero-glow:after{inset:27%;background:radial-gradient(circle,rgba(196,231,174,.09),transparent 70%)}
.hero-content{
  display:flex;flex-direction:column;justify-content:center;align-items:flex-start;max-width:820px;
  padding:72px 8.2% 92px;text-align:left;transform:translate3d(calc(var(--pointer-x)*5px),calc(var(--pointer-y)*5px),0);transition:transform .4s var(--ease);
}
.hero-badge{display:inline-flex;align-items:center;gap:10px;margin-bottom:30px;padding:8px 15px 8px 10px;font-size:9px;letter-spacing:.15em;background:rgba(201,229,183,.08);border-color:rgba(205,235,186,.16)}
.hero-badge>span{width:8px;height:8px;border-radius:50%;background:#78cf82;box-shadow:0 0 0 5px rgba(120,207,130,.12);animation:statusPulse 2s ease-in-out infinite}
.hero h1{font-size:clamp(48px,5.6vw,88px);line-height:1.08;letter-spacing:-.05em;max-width:820px;text-wrap:balance}
.hero h1 span{display:block;color:transparent;-webkit-text-stroke:1px rgba(226,244,214,.8);text-shadow:0 0 50px rgba(141,204,124,.07)}
.hero-description{max-width:720px;font-size:14px;line-height:1.85;color:rgba(231,239,225,.72);margin-top:26px}
.hero-actions{display:flex;align-items:center;gap:25px;margin-top:28px}
.hero-hotline{margin:0;background:var(--mint);color:var(--green-deep);font-size:11px}
.hero-hotline:hover{background:white;color:var(--green-deep)}
.hero-link{font-size:11px;font-weight:700;color:#e2eedb;border-bottom:1px solid rgba(225,239,216,.35);padding:8px 0;transition:border-color .25s,color .25s}
.hero-link:hover{color:var(--mint);border-color:var(--mint)}
.hero-status{
  position:absolute;z-index:5;right:28px;bottom:26px;display:flex;align-items:center;gap:22px;
  padding:12px 17px;border:1px solid rgba(214,237,199,.16);border-radius:17px;background:rgba(5,28,20,.42);backdrop-filter:blur(15px);color:white;
}
.hero-status__dot{width:8px;height:8px;border-radius:50%;background:#76cf81;box-shadow:0 0 13px #76cf81;flex:none}
.hero-status p{padding-left:18px;border-left:1px solid rgba(222,240,210,.14);line-height:1.15}
.hero-status small{display:block;color:#89a895;font-size:6px;letter-spacing:.15em;margin-bottom:5px}
.hero-status strong{font-size:9px;font-weight:600;color:#edf5e8}
.hero-nodes i{position:absolute;z-index:3;width:9px;height:9px;border-radius:50%;border:2px solid #9fdb94;background:var(--green-deep);box-shadow:0 0 0 7px rgba(159,219,148,.08),0 0 28px rgba(159,219,148,.45);animation:nodeFloat 5s ease-in-out infinite}
.hero-nodes i:nth-child(1){right:14%;top:23%}.hero-nodes i:nth-child(2){right:34%;top:17%;animation-delay:-1.2s}.hero-nodes i:nth-child(3){right:24%;top:56%;animation-delay:-2.4s}.hero-nodes i:nth-child(4){right:8%;top:68%;animation-delay:-3.1s}
.hero-scroll{left:8.5%;bottom:27px;width:auto;height:auto;border:0;display:flex;gap:13px;font-size:12px;animation:none;color:#dce9d5}
.hero-scroll span{font-size:7px;letter-spacing:.18em;text-transform:uppercase;color:#88a392}
.hero-corner{left:auto;right:31px;bottom:auto;top:28px;color:#7f9e8a}

.concerns-layout{gap:80px}
.concerns-copy li{padding:18px 20px 18px 12px;margin-bottom:0;border-bottom:1px solid var(--line);font-style:normal;color:#4f5c54;transition:padding-left .3s,color .3s}
.concerns-copy li:hover{padding-left:20px;color:var(--green-deep)}
.concerns-collage{height:430px;gap:15px}
.concerns-collage .image-placeholder{border-radius:var(--radius-sm);box-shadow:var(--shadow-sm)}

.audience:before{inset:58% 0 0;background:linear-gradient(180deg,var(--green-deep),#003c23)}
.audience-card{border:1px solid rgba(21,70,48,.08);box-shadow:var(--shadow-sm);transition:transform .4s var(--ease),box-shadow .4s}
.audience-card:hover{transform:translateY(-10px);box-shadow:0 28px 60px rgba(7,43,29,.17)}
.audience-image>.image-placeholder{height:270px}
.star-badge{backdrop-filter:blur(10px);background:rgba(250,252,247,.78)}
.plus{box-shadow:0 8px 20px rgba(11,56,38,.2)}

.solutions{overflow:hidden}
.solutions:before{content:'';position:absolute;width:760px;height:760px;left:50%;top:42%;transform:translate(-50%,-50%);border:1px solid rgba(57,111,74,.08);border-radius:50%;pointer-events:none;box-shadow:0 0 0 110px rgba(63,119,74,.025),0 0 0 220px rgba(63,119,74,.018)}
.solutions .overline{margin-bottom:16px}
.solution-carousel{outline:none}
.solution-cards{gap:26px;padding-top:118px}
.solution-card{overflow:visible;border:1px solid rgba(221,239,209,.12);background:linear-gradient(150deg,#00683c,#003d24);box-shadow:0 20px 50px rgba(0,76,44,.16);min-height:342px;padding-top:172px}
.solution-card.featured{background:linear-gradient(145deg,#008c4f,#004d2c);box-shadow:0 32px 70px rgba(0,76,44,.26);transform:translateY(-14px);min-height:395px;padding-top:218px}
.solution-card .image-placeholder{border:8px solid var(--paper);background:radial-gradient(circle at 35% 28%,#e7f3dc,#aacb9f 50%,#6f9c73);box-shadow:0 22px 55px rgba(7,46,29,.18),0 0 0 1px rgba(17,65,42,.06)}
.solution-card .image-placeholder:before,.solution-card .image-placeholder:after{opacity:.35}
.solution-icon{display:grid;place-items:center;width:72px;height:72px;border:1px solid rgba(19,71,45,.2);border-radius:50%;font-size:35px;color:var(--green-deep);background:rgba(255,255,255,.28);backdrop-filter:blur(8px);z-index:2}
.solution-card .image-placeholder small{position:absolute;bottom:24px;font-size:6px;color:#315c43}
.solution-kicker{min-height:0!important;margin-bottom:8px;font-size:7px!important;letter-spacing:.2em;color:#91b79e!important}
.solution-card h3{text-transform:none;font-size:21px;letter-spacing:-.03em}
.solution-card>a{display:inline-flex;gap:8px;align-items:center;color:#dcecd3;border-bottom:0;margin-top:19px;font-weight:700}
.solution-card>a span{font-size:16px}
.solution-cards[data-direction=next] .solution-card{animation:cardsInNext .5s var(--ease)}
.solution-cards[data-direction=prev] .solution-card{animation:cardsInPrev .5s var(--ease)}
.carousel-arrow{z-index:8;top:62%;width:48px;height:48px;border:1px solid rgba(255,255,255,.16);background:var(--green);box-shadow:0 12px 30px rgba(0,76,44,.2);transition:transform .3s var(--ease),background .3s}
.carousel-arrow:hover{background:var(--green-mid);transform:scale(1.08)}
.carousel-status{margin-top:30px;font-weight:700;color:#76877a}

.benefit-list li{background:rgba(255,255,255,.56);transition:transform .3s var(--ease),background .3s,border-color .3s}
.benefit-list li:hover{transform:translateX(7px);background:#fff;border-color:#7fa17b}
.benefits-collage .image-placeholder{box-shadow:var(--shadow-sm);transition:transform .4s var(--ease)}
.benefits-collage .image-placeholder:hover{transform:translateY(-6px)}

.process-step{padding:10px 13px;border-radius:10px;border-left-width:2px;color:#59665d}
.process-step strong{color:var(--green-deep)}
.process-step.selected{background:linear-gradient(90deg,#e0ecd9,rgba(224,236,217,.15));color:var(--green-deep)}
.process-main{box-shadow:var(--shadow-lg)}
.process-insets .image-placeholder{box-shadow:0 17px 35px rgba(7,43,29,.15)}
.process-spark{box-shadow:0 15px 30px rgba(7,43,29,.16);animation:nodeFloat 4s ease-in-out infinite}
.circle-button{transition:transform .3s var(--ease),background .3s,color .3s}
.circle-button:hover{transform:rotate(45deg);background:var(--green);color:white}

.demo{background:var(--green-deep)!important;color:white}
.demo h2 em,.demo .overline{color:var(--mint)}
.demo h2 em:after{background:linear-gradient(90deg,transparent,var(--mint),transparent)}
.demo-copy>p:not(.overline){color:#afc2b5}
.demo-copy>small{color:#86a08e}
.scene-buttons button{color:#c3d3c7;border-color:rgba(204,230,186,.25);border-radius:999px;transition:background .3s,border-color .3s,transform .3s}
.scene-buttons button:hover{transform:translateY(-2px);border-color:var(--mint)}
.scene-buttons button.selected{background:var(--mint);border-color:var(--mint);color:var(--green-deep)}
.room-demo{border:1px solid rgba(233,245,224,.16);box-shadow:0 35px 80px rgba(0,0,0,.28)}

.packages:before{background:linear-gradient(145deg,var(--green-deep),#007443)}
.package-card{border-style:solid;border-color:rgba(26,77,52,.13);box-shadow:var(--shadow-sm);transition:transform .4s var(--ease),box-shadow .4s}
.package-card:hover{transform:translateY(-8px);box-shadow:0 30px 70px rgba(8,43,29,.16)}
.package-card.featured{background:linear-gradient(160deg,#d6edc2,#abd098);border-color:#91bd80;box-shadow:0 30px 75px rgba(8,43,29,.2)}
.package-card.featured:hover{transform:translateY(-53px)}
.package-card>.button{background:var(--green);color:white}
.package-card.featured>.button{background:white;color:var(--green-deep)}
.package-badge{background:rgba(246,248,243,.94);backdrop-filter:blur(12px);border-style:solid}

.why-intro .image-placeholder{border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}
.why-grid{border-radius:var(--radius-md);overflow:hidden;background:rgba(255,255,255,.35)}
.why-grid article{transition:background .3s,transform .3s}
.why-grid article:hover{background:white;transform:translateY(-3px)}
.why-grid article>span{display:inline-flex;align-items:center;justify-content:center;width:31px;height:31px;border-radius:50%;background:var(--mint-soft);color:var(--green-mid);font-weight:700}

.testimonial-card{box-shadow:var(--shadow-sm);transition:transform .4s var(--ease),box-shadow .4s}
.testimonial-card:hover{transform:translateY(-8px);box-shadow:0 26px 55px rgba(8,43,29,.18)}
.testimonial-card .image-placeholder:after{background:linear-gradient(0deg,rgba(5,37,25,.91),rgba(5,37,25,.08) 80%)}
.project-card{border:1px solid rgba(19,66,44,.08);box-shadow:0 10px 30px rgba(9,50,33,.06);transition:transform .4s var(--ease),box-shadow .4s}
.project-card:hover{transform:translateY(-9px);box-shadow:0 24px 50px rgba(9,50,33,.14)}
.project-card .image-placeholder{overflow:hidden}
.project-card .project-image{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:10px;background:#dfe9da}
.project-card h3{padding:17px 6px 3px;font-size:13px;line-height:1.35;color:var(--green-deep)}
.project-card p{min-height:24px;padding:0 6px 9px;text-align:center;font-size:9px;line-height:1.4;color:#718077}

.commitment{background:linear-gradient(135deg,var(--green-deep),#007443)}
.commitment-cover h2{font-size:clamp(52px,8vw,110px);color:transparent;-webkit-text-stroke:1px rgba(242,249,237,.86);letter-spacing:-.06em}
.contact-title{background:linear-gradient(135deg,var(--green-deep),var(--green-mid));border-radius:0 0 var(--radius-md) var(--radius-md)}
.contact input:not([type=hidden]),.contact textarea{border-color:#b7c8b2;border-radius:12px;background:rgba(255,255,255,.54);transition:border-color .25s,box-shadow .25s,background .25s}
.contact input:not([type=hidden]):focus,.contact textarea:focus{border-color:var(--green);background:white;box-shadow:0 0 0 4px rgba(0,140,79,.12);outline:0}
.offer>.image-placeholder{border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}
footer{background:linear-gradient(145deg,var(--green-deep),#007443)}
.footer-inner{box-shadow:0 -25px 70px rgba(0,0,0,.12)}

.video-modal-open{overflow:hidden}
.video-modal{position:fixed;z-index:100;inset:0;display:grid;place-items:center;padding:24px}
.video-modal__backdrop{position:absolute;inset:0;background:rgba(3,20,14,.82);backdrop-filter:blur(5px)}
.video-modal__dialog{position:relative;z-index:1;width:min(100%,980px);aspect-ratio:16/9;border-radius:20px;overflow:hidden;background:#071b12;box-shadow:0 24px 80px rgba(0,0,0,.45)}
.video-modal__dialog iframe{display:block;width:100%;height:100%;border:0}
.video-modal__close{position:absolute;z-index:2;top:10px;right:10px;display:grid;width:38px;height:38px;place-items:center;border:1px solid rgba(255,255,255,.5);border-radius:50%;background:rgba(0,0,0,.55);color:#fff;font-size:28px;line-height:1;cursor:pointer}
.video-modal__close:hover{background:#008c50}

.js-motion .reveal{filter:blur(7px);transform:translateY(28px) scale(.99);transition:opacity .8s var(--ease),transform .8s var(--ease),filter .8s var(--ease);transition-delay:calc(var(--reveal-order,0)*55ms)}
.js-motion .reveal.visible{filter:blur(0);transform:translateY(0) scale(1)}

@keyframes statusPulse{50%{box-shadow:0 0 0 8px rgba(120,207,130,0)}}
@keyframes nodeFloat{50%{transform:translateY(-11px);filter:brightness(1.25)}}
@keyframes cardsInNext{from{opacity:.4;transform:translateX(24px)}to{opacity:1;transform:translateX(0)}}
@keyframes cardsInPrev{from{opacity:.4;transform:translateX(-24px)}to{opacity:1;transform:translateX(0)}}

@media(min-width:1600px){
  .hero{padding-left:max(3.2%,calc((100vw - 1560px)/2));padding-right:max(3.2%,calc((100vw - 1560px)/2))}
  .hero-banner{min-height:620px}
}

@media(max-width:1100px){
  .header-cta{display:none}
  .section{padding-top:88px;padding-bottom:88px}
  .hero-banner{min-height:610px}
  .hero h1{font-size:clamp(50px,8vw,82px)}
  .hero-glow{right:-10%;width:430px}
  .hero-status{gap:14px}
  .solution-card.featured{transform:none}
  .package-card.featured:hover{transform:translateY(-8px)}
}

@media(max-width:760px){
  .header{min-height:72px;padding:9px 5%}
  .header.is-scrolled{min-height:66px}
  .header .brand-logo{height:54px}
  .brand-tagline{display:none}
  .menu-toggle{display:grid;margin-left:auto}
  .header nav{top:72px;padding:22px 6% 30px;background:rgba(246,248,243,.98);box-shadow:0 25px 40px rgba(9,43,31,.12);font-size:12px}
  .header nav.open{gap:8px}
  .header nav a{padding:10px 0}
  .section{padding-top:70px;padding-bottom:70px}
  .hero{padding:10px 3.5% 30px}
  .hero-banner{min-height:590px;border-radius:24px}
  .hero-content{justify-content:flex-start;padding:72px 24px 100px;text-align:left}
  .hero-badge{font-size:7px;letter-spacing:.09em;margin-bottom:28px}
  .hero h1{font-size:clamp(43px,14vw,61px);line-height:.98;letter-spacing:-.055em}
  .hero-description{font-size:11px;line-height:1.8;margin-top:26px}
  .hero-actions{align-items:flex-start;flex-direction:column;gap:10px;margin-top:28px}
  .hero-hotline{font-size:9px;padding:9px 11px 9px 19px}
  .hero-link{font-size:9px}
  .hero-glow{width:330px;right:-42%;top:18%}
  .hero-status{display:none}
  .hero-nodes i:nth-child(2),.hero-nodes i:nth-child(4){display:none}
  .hero-nodes i:nth-child(1){right:10%;top:16%}.hero-nodes i:nth-child(3){right:12%;top:66%}
  .hero-scroll{left:24px;bottom:23px}
  .hero-corner{right:19px;top:22px;font-size:5px}
  .concerns-layout{gap:34px}
  .concerns-collage{height:300px}
  .audience:before{top:24%}
  .audience-card{border-radius:21px}
  .audience-image>.image-placeholder{height:250px}
  .solution-cards{padding-top:80px;min-height:430px}
  .solution-card:not(.featured){display:none}
  .solution-card.featured{min-height:350px;padding-top:185px;border-radius:25px}
  .solution-card.featured .image-placeholder{width:190px;height:190px;top:-58px;right:calc(50% - 95px)}
  .carousel-arrow{width:38px;height:38px;top:58%}
  .benefits-collage .image-placeholder:hover{transform:none}
  .demo{padding-left:6%;padding-right:6%}
  .package-card.featured:hover{transform:none}
  .why-grid{grid-template-columns:repeat(2,1fr)}
  .testimonial-grid{grid-template-columns:1fr}
  .testimonial-card>.image-placeholder{min-height:250px}
  .commitment-cover h2{font-size:55px}
  .footer-links .brand{margin-top:0;align-self:flex-start}
  .footer-links .brand-logo{height:82px}
}

/* Project gallery cards — prepared for multi-image galleries. */
.projects{background:linear-gradient(180deg,#fafcf9 0%,#f5f8f4 100%)}
.projects-intro{display:grid;grid-template-columns:minmax(300px,.72fr) minmax(430px,1.28fr);align-items:end;gap:70px;margin-bottom:44px}
.projects-heading{margin:0}
.projects-heading>span{display:block;font-size:32px;font-weight:400;line-height:1;color:#303a35;letter-spacing:.01em}
.projects-heading h2{position:relative;margin:13px 0 0;font-size:clamp(48px,4.5vw,70px);font-style:normal;font-weight:800;line-height:.9;letter-spacing:-.055em;color:#005b3a}
.projects-heading h2:after{content:'';display:block;width:62px;height:3px;margin-top:20px;border-radius:99px;background:#009458}
.projects-intro>p{max-width:680px;padding-bottom:10px;font-size:15px;line-height:1.75;color:#5f6963}
.project-grid{gap:22px}
.project-card{position:relative;isolation:isolate;min-height:0;aspect-ratio:16/9;padding:0;overflow:hidden;border:0;border-radius:16px;background:#063f2d;box-shadow:0 10px 28px rgba(5,53,35,.13);transition:transform .4s var(--ease),box-shadow .4s var(--ease)}
.project-card:after{content:'';position:absolute;z-index:1;inset:22% 0 0;background:linear-gradient(180deg,transparent 0%,rgba(0,61,43,.18) 30%,rgba(0,55,39,.94) 100%);pointer-events:none}
.project-card:hover{transform:translateY(-7px);box-shadow:0 24px 48px rgba(5,53,35,.2)}
.project-card .project-image{position:absolute;z-index:0;inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center;border-radius:0;background:#dfe9da;transition:transform .7s var(--ease),opacity .25s ease}
.project-card:hover .project-image{transform:scale(1.045)}
.project-card.is-changing .project-image{animation:projectImageChange .42s var(--ease)}
.project-card__content{position:absolute;z-index:2;left:18px;right:64px;bottom:16px;color:#fff}
.project-card__content>span{display:inline-flex;align-items:center;min-height:28px;margin-bottom:9px;padding:5px 14px;border-radius:999px;background:#00985a;font-size:10px;font-weight:800;letter-spacing:.08em;box-shadow:0 7px 18px rgba(0,80,47,.22)}
.project-card .project-card__content h3{margin:0;padding:0;text-align:left;font-size:16px;line-height:1.25;font-weight:750;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.3)}
.project-card .project-card__content p{display:flex;align-items:center;gap:7px;min-height:0;margin-top:7px;padding:0;text-align:left;font-size:10px;line-height:1.3;color:rgba(255,255,255,.92)}
.project-card__content p b{font-size:16px;line-height:1;color:#fff}
.project-next{position:absolute;z-index:3;right:14px;bottom:14px;width:44px;height:44px;border:0;border-radius:50%;background:#fff;color:#007a49;box-shadow:0 8px 22px rgba(0,41,29,.23);transition:transform .25s var(--ease),background .25s,color .25s}
.project-next:hover{transform:translateX(3px);background:#00a160;color:#fff}
.project-next:focus-visible{outline:3px solid rgba(137,240,190,.9);outline-offset:3px}
.project-next i,.project-next i:before,.project-next i:after{position:absolute;display:block;content:''}
.project-next i{left:13px;top:21px;width:18px;height:2.5px;border-radius:99px;background:currentColor}
.project-next i:before{right:0;top:-5px;width:9px;height:9px;border-top:2.5px solid currentColor;border-right:2.5px solid currentColor;transform:rotate(45deg)}
.project-gallery-status{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
@keyframes projectImageChange{0%{opacity:.25;transform:scale(1.08)}100%{opacity:1;transform:scale(1)}}

@media(max-width:1100px){
  .projects-intro{grid-template-columns:1fr 1.35fr;gap:40px}
  .project-card{min-height:0}
  .project-card .project-card__content h3{font-size:14px}
}

@media(max-width:760px){
  .projects-intro{grid-template-columns:1fr;gap:22px;margin-bottom:30px}
  .projects-heading>span{font-size:24px}
  .projects-heading h2{margin-top:9px;font-size:43px}
  .projects-heading h2:after{margin-top:15px}
  .projects-intro>p{padding:0;font-size:12px;line-height:1.7}
  .project-grid{grid-template-columns:1fr;gap:15px}
  .project-card{min-height:0;aspect-ratio:16/9;border-radius:15px}
  .project-card__content{left:16px;right:60px;bottom:15px}
  .project-card .project-card__content h3{font-size:16px}
  .project-card .project-card__content p{font-size:10px}
  .project-next{right:13px;bottom:13px;width:42px;height:42px}
}

/* The supplied commitment artwork contains its own diagonal and typography. */
.commitment:before,.commitment:after{display:none}
.commitment-home{
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:left center;
  filter:none;
  transform:none;
}
.commitment-cover__shade,.commitment-lines,.commitment-cover__content,.commitment .commitment-cover:has(img):after{display:none}

@media(prefers-reduced-motion:reduce){
  .hero-badge>span,.hero-nodes i,.process-spark,.solution-card{animation:none!important}
  .hero-content,.hero-grid,.hero-glow{transform:none!important}
  .js-motion .reveal{opacity:1;filter:none;transform:none}
}

/* Premium consultation block — based on the supplied second reference */
.contact-premium{
  display:grid;
  grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr);
  align-items:stretch;
  gap:28px;
  padding-top:96px;
  padding-bottom:96px;
  background:
    radial-gradient(circle at 18% 18%,rgba(0,140,79,.08),transparent 24rem),
    linear-gradient(180deg,#fbfcfa,#f4f7f2);
}
.contact-form-card,.contact-visual-card{
  min-width:0;
  margin:0;
  border:1px solid rgba(9,57,37,.08);
  border-radius:28px;
  background:rgba(255,255,255,.92);
  box-shadow:0 24px 70px rgba(10,55,37,.12);
  overflow:hidden;
}
.contact-form-card{padding:20px;display:flex;flex-direction:column}
.contact-promo{
  position:relative;
  min-height:188px;
  padding:26px 245px 24px 30px;
  border-radius:22px;
  overflow:hidden;
  color:#fff;
  background:
    radial-gradient(circle at 92% 8%,rgba(215,247,78,.5),transparent 18%),
    radial-gradient(circle at 68% 95%,rgba(160,235,65,.24),transparent 30%),
    linear-gradient(120deg,#00a45d,#008c4f 56%,#006f40);
  isolation:isolate;
}
.contact-promo:before,.contact-promo:after{
  content:'';position:absolute;pointer-events:none;z-index:-1;border-radius:50%;
  border:1px solid rgba(222,255,212,.16)
}
.contact-promo:before{width:320px;height:320px;right:-88px;top:-185px;box-shadow:0 0 0 36px rgba(215,255,185,.035),0 0 0 72px rgba(215,255,185,.025)}
.contact-promo:after{width:125px;height:125px;right:180px;bottom:-100px}
.promo-copy p{display:flex;align-items:center;gap:10px;color:#fff;font-size:24px;line-height:1.15;font-weight:800;letter-spacing:-.04em;white-space:nowrap}
.promo-copy p>span{font-size:27px;color:#ffe46a;filter:drop-shadow(0 4px 10px rgba(0,0,0,.15))}
.promo-copy strong{display:inline-grid;place-items:center;min-width:93px;padding:7px 13px;border-radius:11px;background:#ffe252;color:#007744;font-size:31px;box-shadow:0 8px 20px rgba(0,77,43,.16)}
.promo-copy>small{display:block;margin-top:11px;color:#ecfff4;font-size:12px;font-weight:600}
.offer-countdown{display:flex;align-items:flex-start;gap:7px;margin-top:10px}
.offer-countdown>span{display:grid;grid-template-rows:48px auto;text-align:center;min-width:46px}
.offer-countdown b{display:grid;place-items:center;border-radius:8px;background:rgba(0,67,39,.52);box-shadow:inset 0 0 0 1px rgba(255,255,255,.05);font-size:28px;line-height:1;font-variant-numeric:tabular-nums}
.offer-countdown small{margin-top:5px;color:#f2fff7;font-size:8px;letter-spacing:.04em}
.offer-countdown i{padding-top:13px;font-style:normal;font-size:22px;font-weight:800}
.promo-gift{position:absolute;right:42px;bottom:22px;width:148px;height:112px;transform:rotate(-5deg)}
.promo-gift:before{content:'✦';position:absolute;left:18px;right:10px;bottom:0;height:82px;display:grid;place-items:center;border-radius:18px 18px 12px 12px;background:linear-gradient(135deg,#f5ffec,#d7f5c4);color:#00a15b;font-size:38px;box-shadow:0 18px 30px rgba(0,64,38,.2)}
.promo-gift:after{content:'';position:absolute;width:36px;height:126px;left:54px;bottom:-17px;background:#00a25b;clip-path:polygon(28% 0,50% 24%,72% 0,100% 20%,68% 45%,100% 100%,52% 80%,0 100%,31% 45%,0 20%)}
.promo-gift>span{position:absolute;z-index:2;right:-8px;bottom:-8px;padding:7px 11px;border-radius:9px;background:#008c4f;color:#fff;font-size:21px;font-weight:800;transform:rotate(9deg);box-shadow:0 10px 20px rgba(0,55,32,.2)}

.contact-premium #contact-form{
  flex:1;
  display:flex;
  flex-direction:column;
  gap:13px;
  padding:18px 7px 0;
}
.contact-premium #contact-form:before{display:none}
.contact-field{
  display:grid;
  grid-template-columns:58px minmax(0,1fr);
  grid-template-rows:auto 50px;
  column-gap:14px;
  align-items:end;
}
.contact-field--message{grid-template-rows:auto 82px}
.contact-field .field-icon{
  grid-column:1;
  grid-row:1/3;
  align-self:end;
  display:grid;
  place-items:center;
  width:58px;
  height:58px;
  margin-bottom:0;
  border-radius:50%;
  color:#008c4f;
  background:linear-gradient(145deg,#effaf4,#dff3e8);
  transition:transform .25s var(--ease),background .25s;
}
.contact-field--message .field-icon{align-self:start;margin-top:22px}
.contact-field .field-icon svg{width:29px;height:29px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.contact-field:focus-within .field-icon{transform:scale(1.06);background:#d9f3e5}
.contact-premium .contact-field label{
  grid-column:2;
  grid-row:1;
  margin:0 0 5px;
  color:#182a21;
  font-size:11px;
  line-height:1.3;
  font-weight:700;
}
.contact-field label em{color:#e54e4e;font-style:normal}
.contact-premium .contact-field input:not([type=hidden]),
.contact-premium .contact-field textarea{
  grid-column:2;
  grid-row:2;
  width:100%;
  height:50px;
  margin:0;
  padding:0 14px;
  border:1px solid #c8d4d9;
  border-radius:9px;
  background:#fff;
  color:var(--ink);
  font-size:12px;
  box-shadow:inset 0 1px 2px rgba(15,43,31,.02);
}
.contact-premium .contact-field textarea{height:82px;padding-top:13px;resize:vertical;line-height:1.5}
.contact-premium .contact-field input::placeholder,.contact-premium .contact-field textarea::placeholder{color:#93a1ad}
.contact-premium .contact-field input:focus,.contact-premium .contact-field textarea:focus{border-color:#008c4f;box-shadow:0 0 0 4px rgba(0,140,79,.1)}
.contact-submit{width:100%;min-height:57px;margin-top:2px;background:linear-gradient(90deg,#00a35c,#008c4f);font-size:15px;border:0}
.contact-submit>span{position:relative;width:38px;height:38px;margin-right:-9px;background:#fff;color:transparent;font-size:0}
.contact-submit>span:before{content:'';position:absolute;left:10px;top:18px;width:17px;height:3px;border-radius:999px;background:#008c4f}
.contact-submit>span:after{content:'';position:absolute;right:9px;top:14px;width:8px;height:8px;border-top:3px solid #008c4f;border-right:3px solid #008c4f;transform:rotate(45deg);border-radius:1px}
.contact-submit:hover>span{transform:none}
.contact-premium .form-note{display:flex;align-items:center;justify-content:center;gap:7px;margin:0;color:#7e8992;font-size:8px;text-align:center}
.contact-premium #form-result{margin:5px 0 0 72px;padding:15px;border:1px solid #d6e6dc;border-radius:14px;background:#f5faf7}
.contact-premium #form-result textarea{width:100%;padding:10px;border:1px solid #c8d9cf;border-radius:9px;background:white;font-size:11px}
.contact-premium #form-result .button{min-height:40px;padding:7px 18px;font-size:10px}

.contact-visual-card{position:relative;min-height:690px;background:#edf7ef;isolation:isolate}
.contact-visual-card:before{content:'';position:absolute;z-index:-1;inset:-24px;background:url('assets/homeq-contact-visual.png') center/cover no-repeat;filter:blur(22px) saturate(.9);opacity:.3;transform:scale(1.08)}
.contact-visual-card img{position:absolute;z-index:1;inset:0;width:100%;height:100%;object-fit:contain;object-position:center}
.contact-visual-card:after{content:'';position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(255,255,255,.45);pointer-events:none}

@media(max-width:1400px){
  .contact-premium{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr)}
  .contact-promo{padding-right:178px}
  .promo-copy p{font-size:20px}.promo-copy strong{font-size:26px;min-width:80px}.promo-gift{right:20px;transform:rotate(-5deg) scale(.78);transform-origin:right bottom}
}

@media(max-width:1180px){
  .contact-premium{grid-template-columns:minmax(0,1fr) minmax(0,.95fr);gap:22px;padding-left:4%;padding-right:4%}
  .contact-promo{padding-right:185px}
  .promo-copy p{font-size:19px}.promo-copy strong{font-size:25px;min-width:78px}.promo-gift{right:22px;transform:rotate(-5deg) scale(.82);transform-origin:right bottom}
  .contact-visual-card{min-height:650px}
}

@media(max-width:900px){
  .contact-premium{grid-template-columns:1fr;max-width:none;gap:26px}
  .contact-form-card{max-width:700px;width:100%;margin:auto}
  .contact-visual-card{min-height:640px;max-width:700px;width:100%;margin:auto}
}

@media(max-width:760px){
  .contact-premium{padding:58px 4%;gap:20px;background:#f5f8f4}
  .contact-form-card,.contact-visual-card{border-radius:21px}
  .contact-form-card{padding:12px}
  .contact-promo{min-height:180px;padding:20px 112px 18px 17px;border-radius:16px}
  .promo-copy p{display:block;font-size:17px;white-space:normal}.promo-copy p>span{font-size:20px}.promo-copy strong{display:inline-flex;min-width:auto;margin:7px 0 0;padding:5px 10px;font-size:24px}
  .promo-copy>small{font-size:9px;margin-top:7px}
  .offer-countdown{gap:4px;margin-top:8px}.offer-countdown>span{grid-template-rows:36px auto;min-width:35px}.offer-countdown b{font-size:20px}.offer-countdown i{font-size:16px;padding-top:8px}.offer-countdown small{font-size:6px}
  .promo-gift{right:7px;bottom:18px;transform:rotate(-5deg) scale(.55);transform-origin:right bottom}
  .contact-premium #contact-form{gap:12px;padding:16px 0 2px}
  .contact-field{grid-template-columns:44px minmax(0,1fr);grid-template-rows:auto 49px;column-gap:10px}
  .contact-field--message{grid-template-rows:auto 88px}
  .contact-field .field-icon{width:44px;height:44px}.contact-field .field-icon svg{width:23px;height:23px}
  .contact-field--message .field-icon{margin-top:21px}
  .contact-premium .contact-field label{font-size:10px}
  .contact-premium .contact-field input:not([type=hidden]){height:49px;font-size:14px}
  .contact-premium .contact-field textarea{height:88px;font-size:14px}
  .contact-submit{min-height:54px;font-size:13px}
  .contact-premium .form-note{font-size:7px;padding:0 8px}
  .contact-premium #form-result{margin-left:54px}
  .contact-visual-card{min-height:490px}
}

@media(max-width:420px){
  .contact-promo{padding-right:94px}
  .promo-gift{right:-7px;transform:rotate(-5deg) scale(.48)}
  .contact-visual-card{min-height:430px}
}

/* Commitment statement — rebuilt from the supplied reference */
.commitment{
  --commitment-split:51%;
  position:relative;
  isolation:isolate;
  display:grid;
  grid-template-columns:minmax(0,51%) minmax(0,49%);
  min-height:690px;
  overflow:hidden;
  background:#004f31;
  color:#fff;
}
.commitment:before,.commitment:after{
  content:'';
  position:absolute;
  z-index:5;
  top:0;
  bottom:0;
  pointer-events:none;
  transform:none;
}
.commitment:before{
  left:calc(var(--commitment-split) - 126px);
  width:252px;
  background:#005b36;
  clip-path:polygon(50% 0,100% 0,50% 100%,0 100%);
}
.commitment:after{
  left:calc(var(--commitment-split) - 8px);
  width:84px;
  background:linear-gradient(180deg,rgba(124,207,165,.82),rgba(45,158,105,.9));
  clip-path:polygon(28% 0,56% 0,28% 100%,0 100%);
}
.commitment-copy{
  position:relative;
  z-index:3;
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
  padding:58px clamp(48px,5.2vw,100px) 62px;
  background:
    radial-gradient(circle at 22% 18%,rgba(12,161,92,.22),transparent 34%),
    linear-gradient(130deg,#004629 0%,#005f39 58%,#004b2f 100%);
}
.commitment-copy:before,.commitment-copy:after{display:none}
.commitment-copy h2{
  display:flex;
  align-items:baseline;
  flex-wrap:wrap;
  gap:.25em;
  margin:0;
  padding:0 0 22px;
  border-bottom:1px solid rgba(217,239,225,.55);
  font-size:clamp(23px,1.65vw,33px);
  font-weight:400;
  line-height:1.2;
  letter-spacing:.005em;
}
.commitment-copy h2 span{font-weight:700}
.commitment-copy h2 strong{
  color:#e0bd4f;
  font-weight:800;
  -webkit-text-fill-color:#e0bd4f;
  -webkit-text-stroke:.15px rgba(105,68,5,.45);
  text-shadow:
    0 1px 0 #fff1a6,
    0 2px 0 rgba(175,119,14,.55),
    0 5px 13px rgba(0,0,0,.24);
}
.commitment-text{padding:27px 0 25px}
.commitment-text h3{margin:0;font-size:clamp(18px,1.25vw,25px);font-weight:750;letter-spacing:-.02em}
.commitment-text p{margin:14px 0 0;color:rgba(255,255,255,.88);font-size:clamp(13px,.98vw,18px);line-height:1.7}
.commitment-team{
  position:relative;
  min-width:0;
  height:clamp(290px,21.5vw,410px);
  margin:0;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.35);
  border-radius:17px;
  background:#dfe8df;
  box-shadow:0 22px 55px rgba(0,27,17,.28);
}
.commitment-team:after{content:'';position:absolute;inset:0;box-shadow:inset 0 0 0 1px rgba(255,255,255,.22);pointer-events:none}
.commitment-team img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 55%;filter:saturate(.98) contrast(1.02)}
.commitment-team figcaption{
  position:absolute;
  left:18px;
  bottom:16px;
  padding:7px 11px;
  border:1px solid rgba(255,255,255,.35);
  border-radius:999px;
  background:rgba(0,57,34,.72);
  backdrop-filter:blur(9px);
  color:#fff;
  font-size:8px;
  font-weight:700;
  letter-spacing:.12em;
}
.commitment-cover{
  position:relative;
  isolation:isolate;
  min-width:0;
  min-height:690px;
  display:grid;
  place-items:center;
  overflow:hidden;
  text-align:center;
  background:#6f8d77;
}
.commitment-home{position:absolute;z-index:-3;inset:0;width:100%;height:100%;object-fit:cover;object-position:right center;filter:saturate(.72) contrast(.88) blur(2px);transform:scale(1.42);transform-origin:right center}
.commitment-cover__shade{
  position:absolute;
  z-index:-2;
  inset:0;
  background:
    linear-gradient(90deg,rgba(0,75,44,.9) 0%,rgba(0,83,49,.62) 12%,rgba(0,85,50,.34) 42%,rgba(0,58,35,.48)),
    linear-gradient(180deg,rgba(229,239,226,.2),rgba(5,75,45,.12));
  backdrop-filter:blur(1.5px);
}
.commitment-cover:after{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.08),transparent 42%,rgba(0,49,29,.14))}
.commitment .commitment-cover:has(img):after{z-index:1;background:linear-gradient(135deg,rgba(255,255,255,.08),transparent 42%,rgba(0,49,29,.18));pointer-events:none}
.commitment-lines{position:absolute;z-index:2;inset:0;pointer-events:none;opacity:.78}
.commitment-lines i{position:absolute;width:1px;height:58%;top:-8%;left:58%;background:rgba(255,255,255,.86);transform:rotate(25deg);transform-origin:center}
.commitment-lines i:nth-child(2){left:61%;top:-13%;height:105%;opacity:.7}
.commitment-lines i:nth-child(3){left:48%;top:59%;height:58%;opacity:.82}
.commitment-cover__content{
  position:relative;
  z-index:2;
  width:100%;
  max-width:100%;
  overflow:hidden;
  padding:40px clamp(36px,5vw,92px) 40px clamp(86px,7vw,142px);
  transform:translateX(2.5vw);
}
.commitment-cover__content h2{
  margin:0;
  color:transparent;
  font-size:clamp(58px,6.4vw,122px);
  font-weight:800;
  line-height:.94;
  letter-spacing:-.075em;
  white-space:nowrap;
  -webkit-text-stroke:1.5px rgba(255,255,255,.92);
  text-shadow:0 14px 40px rgba(0,45,27,.12);
}
.commitment-cover__content p{margin:28px 0 0;color:#fff;font-size:clamp(12px,1.05vw,20px);font-weight:500;letter-spacing:.18em}
.commitment-spark{position:absolute;right:20%;top:-36px;width:76px;height:58px}
.commitment-spark i{position:absolute;display:block;border:2px solid rgba(255,255,255,.96);transform:skew(-26deg)}
.commitment-spark i:first-child{left:0;bottom:0;width:41px;height:18px}.commitment-spark i:last-child{right:0;top:0;width:27px;height:22px}

@media(max-width:1100px){
  .commitment{--commitment-split:54%;grid-template-columns:minmax(0,54%) minmax(0,46%);min-height:610px}
  .commitment-copy{padding:50px 5% 52px}
  .commitment-team{height:300px}
  .commitment-cover{min-height:610px}
  .commitment-cover__content{padding-left:70px;padding-right:28px;transform:translateX(2vw)}
  .commitment-cover__content h2{font-size:clamp(52px,6.5vw,76px)}
}

@media(max-width:760px){
  .commitment{grid-template-columns:1fr;min-height:0}
  .commitment-copy{padding:48px 6% 50px}
  .commitment:before,.commitment:after{display:none}
  .commitment-copy h2{display:block;font-size:22px;line-height:1.45;padding-bottom:17px}
  .commitment-copy h2 strong{display:block}
  .commitment-text{padding:23px 0 21px}.commitment-text h3{font-size:18px}.commitment-text p{font-size:12px;line-height:1.75}
  .commitment-team{height:auto;aspect-ratio:1.48;border-radius:14px}
  .commitment-team figcaption{left:11px;bottom:10px;font-size:6px;padding:5px 8px}
  .commitment-cover{min-height:390px}
  .commitment-home{object-position:right center;transform:scale(1.28)}
  .commitment-cover__content{padding:25px 14px}
  .commitment-cover__content h2{font-size:clamp(55px,19vw,86px);-webkit-text-stroke:1px rgba(255,255,255,.94)}
  .commitment-cover__content p{margin-top:18px;font-size:9px;letter-spacing:.16em}
  .commitment-spark{right:14%;top:-39px;transform:scale(.72)}
}

/* Final commitment composition: supplied team photo + supplied artwork. */
.commitment{
  grid-template-columns:minmax(0,51%) minmax(0,49%);
}
.commitment:before,.commitment:after,
.commitment-cover:before,.commitment-cover:after,
.commitment-cover__shade,.commitment-lines,.commitment-cover__content{
  display:none!important;
}
.commitment-team figcaption{display:none}
.commitment-team img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 52%;
}
.commitment-cover{
  min-height:690px;
  background:#6f8d77;
}
.commitment-cover .commitment-home{
  position:absolute;
  z-index:0;
  inset:0;
  width:100%;
  height:100%;
  object-fit:fill;
  object-position:center;
  filter:none;
  transform:none;
  transform-origin:center;
}

@media(max-width:1100px) and (min-width:761px){
  .commitment{grid-template-columns:minmax(0,54%) minmax(0,46%)}
  .commitment-cover{min-height:610px}
}

@media(max-width:760px){
  .commitment{grid-template-columns:1fr}
  .commitment-cover{min-height:0;aspect-ratio:1672/940}
  .commitment-cover .commitment-home{object-fit:cover;object-position:center}
}

@keyframes commitment-cover-fade{0%,42%{opacity:1}50%,92%{opacity:0}100%{opacity:1}}
.commitment-cover .commitment-home{opacity:1;animation:none}
.commitment-cover .commitment-home:first-child{animation-delay:0s}
.commitment-cover .commitment-home:nth-child(2){animation-delay:5s}

/* Enlarged icon header — inspired by the supplied navigation reference. */
.header{
  width:100%;
  min-height:96px;
  margin:0;
  padding:11px 4%;
  gap:24px;
  top:0;
  border:0;
  border-bottom:1px solid rgba(18,91,59,.1);
  border-radius:0;
  background:rgba(250,252,248,.92);
  box-shadow:none;
}
.header.is-scrolled{
  min-height:88px;
  background:rgba(250,252,248,.97);
  box-shadow:0 16px 42px rgba(9,64,41,.15);
}
.header .brand-logo{height:68px}
.header .brand-tagline{
  display:flex;
  flex-direction:column;
  gap:2px;
  padding:0 30px 0 3px;
  border-right:1px solid rgba(18,91,59,.13);
  line-height:1.35;
  letter-spacing:.13em;
}
.header .brand-tagline strong{font-size:15px;color:#143f2e;letter-spacing:.08em}
.header .brand-tagline span{font-size:9px;color:#708078;letter-spacing:.2em}
.header nav{flex:0 1 auto;margin-left:auto;margin-right:12px;justify-content:space-between;gap:16px;font-size:13px;letter-spacing:0;text-transform:none}
.header nav a{
  display:flex;
  align-items:center;
  gap:8px;
  min-height:48px;
  padding:8px 13px;
  border-radius:999px;
  color:#173f30;
  font-weight:650;
}
.header nav a:hover,.header nav a.active{
  color:#007943;
  background:linear-gradient(135deg,rgba(0,140,79,.12),rgba(194,240,216,.34));
  box-shadow:0 10px 25px rgba(0,140,79,.08);
}
.header nav a:after{left:50%;bottom:4px;width:0;height:3px;border-radius:999px;transform:translateX(-50%)}
.header nav a:hover:after,.header nav a.active:after{width:32px}
.nav-icon{
  width:22px;
  height:22px;
  flex:0 0 22px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.header-cta{
  gap:16px;
  min-height:56px;
  padding:7px 9px 7px 23px;
  background:linear-gradient(135deg,#00683e,#008c4f);
  font-size:13px;
  letter-spacing:0;
  box-shadow:0 10px 25px rgba(0,140,79,.18);
}
.header-cta b{
  position:relative;
  width:40px;
  height:40px;
  overflow:hidden;
  background:linear-gradient(145deg,#35d68d,#18bd73);
  color:transparent;
  font-size:0;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.24),0 6px 16px rgba(0,94,54,.2);
}
.header-cta b:before{
  content:'';
  position:absolute;
  left:10px;
  top:19px;
  width:19px;
  height:2.5px;
  border-radius:99px;
  background:#fff;
}
.header-cta b:after{
  content:'';
  position:absolute;
  right:9px;
  top:14px;
  width:9px;
  height:9px;
  border-top:2.5px solid #fff;
  border-right:2.5px solid #fff;
  border-radius:1px;
  transform:rotate(45deg);
}
.header-cta:hover b{transform:translateX(3px) scale(1.04)}

@media(max-width:1350px){
  .header{gap:18px;padding-left:4%;padding-right:4%}
  .header .brand-tagline{padding-right:18px}
  .header nav{gap:5px;font-size:12px}
  .header nav a{gap:7px;padding:9px 10px}
  .nav-icon{width:21px;height:21px;flex-basis:21px}
  .header-cta{font-size:12px;padding-left:20px;gap:13px}
}

@media(max-width:1100px) and (min-width:761px){
  .header{min-height:88px;margin:0;padding:10px 4%}
  .header .brand-logo{height:62px}
  .header .brand-tagline{display:none}
  .header nav{font-size:12px;margin-left:auto}
  .header nav a{min-height:46px}
  .header-cta{display:none}
}

@media(max-width:760px){
  .header,.header.is-scrolled{
    min-height:72px;
    margin:0;
    padding:8px 5%;
    top:0;
    border-radius:0;
  }
  .header .brand-logo{height:52px}
  .header .brand-tagline{display:none}
  .header nav{top:80px;left:0;right:0;margin:0;padding:14px;border:1px solid rgba(18,91,59,.13);border-radius:20px;box-shadow:0 20px 40px rgba(9,43,31,.14)}
  .header nav.open{gap:4px}
  .header nav a{min-height:50px;padding:10px 14px;font-size:14px}
  .nav-icon{width:22px;height:22px;flex-basis:22px}
}

/* Commitment image gallery */
.commitment-team[data-commitment-gallery]{
  isolation:isolate;
  height:clamp(350px,25vw,480px);
  cursor:default;
  outline:none;
}
.commitment-team[data-commitment-gallery]:focus-visible{
  box-shadow:0 0 0 3px rgba(255,255,255,.7),0 22px 55px rgba(0,27,17,.28);
}
.commitment-team[data-commitment-gallery]:after{
  z-index:2;
  border-radius:inherit;
}
.commitment-slides{
  position:absolute;
  inset:0;
  z-index:0;
  overflow:hidden;
  border-radius:inherit;
  background:#dfe8df;
}
.commitment-team .commitment-slide{
  position:absolute;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 18%;
  opacity:0;
  transform:scale(1.035);
  filter:saturate(.98) contrast(1.02);
  transition:opacity .48s ease,transform .8s cubic-bezier(.2,.7,.2,1);
  pointer-events:none;
}
.commitment-team .commitment-slide:first-child{object-position:center 36%}
.commitment-team .commitment-slide:nth-child(10){object-position:center 72%}
.commitment-team .commitment-slide:nth-child(12){object-position:center 78%}
.commitment-team .commitment-slide:nth-child(18){object-position:center 72%}
.commitment-team .commitment-slide.is-active{
  z-index:1;
  opacity:1;
  transform:scale(1);
}
.commitment-team[data-commitment-gallery] figcaption{
  position:absolute;
  left:20px;
  bottom:18px;
  z-index:5;
  display:block;
  margin:0;
  padding:8px 12px;
  border:1px solid rgba(255,255,255,.25);
  border-radius:999px;
  background:rgba(0,66,42,.78);
  color:#fff;
  font-size:9px;
  font-weight:800;
  letter-spacing:.1em;
  line-height:1;
  text-transform:uppercase;
  backdrop-filter:blur(8px);
  box-shadow:0 8px 22px rgba(0,29,18,.2);
}
.commitment-gallery-button{
  position:absolute;
  top:50%;
  z-index:6;
  width:42px;
  height:42px;
  padding:0;
  border:1px solid rgba(255,255,255,.68);
  border-radius:50%;
  background:rgba(255,255,255,.9);
  color:#007749;
  box-shadow:0 9px 25px rgba(0,42,27,.22);
  transform:translateY(-50%);
  transition:transform .25s ease,background .25s ease,box-shadow .25s ease;
  cursor:pointer;
}
.commitment-gallery-button--prev{left:14px}
.commitment-gallery-button--next{right:14px}
.commitment-gallery-button:hover{
  background:#fff;
  box-shadow:0 12px 28px rgba(0,42,27,.3);
  transform:translateY(-50%) scale(1.08);
}
.commitment-gallery-button:focus-visible{outline:3px solid #f2c34b;outline-offset:3px}
.commitment-gallery-button i{
  position:absolute;
  left:13px;
  top:19px;
  width:15px;
  height:2px;
  border-radius:99px;
  background:currentColor;
}
.commitment-gallery-button i:after{
  content:'';
  position:absolute;
  top:-4px;
  width:8px;
  height:8px;
  border-top:2px solid currentColor;
  border-right:2px solid currentColor;
}
.commitment-gallery-button--next i:after{right:0;transform:rotate(45deg)}
.commitment-gallery-button--prev i:after{left:0;transform:rotate(-135deg)}
.commitment-gallery-meta{
  position:absolute;
  right:20px;
  bottom:20px;
  z-index:5;
  display:flex;
  align-items:center;
  gap:9px;
  color:#fff;
  font-size:9px;
  font-weight:800;
  letter-spacing:.1em;
  text-shadow:0 1px 5px rgba(0,0,0,.45);
}
.commitment-gallery-progress{
  position:relative;
  display:block;
  width:48px;
  height:2px;
  overflow:hidden;
  border-radius:99px;
  background:rgba(255,255,255,.38);
}
.commitment-gallery-progress i{
  position:absolute;
  inset:0;
  background:#fff;
  transform:scaleX(0);
  transform-origin:left center;
}
.commitment-team.is-autoplaying .commitment-gallery-progress i{animation:commitment-progress 3.5s linear forwards}
@keyframes commitment-progress{to{transform:scaleX(1)}}

@media(max-width:760px){
  .commitment-team[data-commitment-gallery]{height:auto;aspect-ratio:1.35}
  .commitment-gallery-button{width:36px;height:36px}
  .commitment-gallery-button--prev{left:9px}
  .commitment-gallery-button--next{right:9px}
  .commitment-gallery-button i{left:11px;top:16px;width:14px}
  .commitment-team[data-commitment-gallery] figcaption{left:12px;bottom:11px;max-width:58%;padding:6px 9px;font-size:6px}
  .commitment-gallery-meta{right:12px;bottom:13px;font-size:7px}
  .commitment-gallery-progress{width:32px}
}

@media(prefers-reduced-motion:reduce){
  .commitment-team .commitment-slide{transition:none}
  .commitment-team.is-autoplaying .commitment-gallery-progress i{animation:none}
}

/* Customer stories — rebuilt from the supplied reference */
.testimonials{
  padding-top:78px;
  padding-bottom:82px;
  background:
    radial-gradient(circle at 8% 8%,rgba(178,224,190,.14),transparent 24%),
    linear-gradient(180deg,#fbfdf9 0%,#f5f8f2 100%);
}
.testimonial-intro{
  display:grid;
  grid-template-columns:minmax(0,1fr) 330px;
  align-items:center;
  gap:40px;
  margin-bottom:42px;
}
.testimonials .testimonial-heading{
  display:block;
  margin:0;
  padding:0;
  border-radius:0;
  background:none;
}
.testimonial-heading>p{
  display:flex;
  align-items:center;
  gap:16px;
  margin:0 0 8px;
  color:#007b4b;
  font-size:clamp(12px,1.1vw,18px);
  font-weight:700;
  letter-spacing:.12em;
}
.testimonial-heading>p i{
  display:block;
  width:48px;
  height:2px;
  border-radius:999px;
  background:#008c4f;
}
.testimonials .testimonial-heading h2{
  margin:0;
  color:#008c4f;
  font-size:clamp(35px,4vw,66px);
  font-weight:800;
  line-height:1.02;
  letter-spacing:-.055em;
  text-transform:uppercase;
}
.testimonials .testimonial-heading h2 span{color:#153c31}
.testimonial-heading>small{
  display:block;
  margin-top:13px;
  color:#698b7f;
  font-size:clamp(12px,1.05vw,18px);
  font-weight:500;
  line-height:1.5;
}
.testimonial-note{
  position:relative;
  justify-self:end;
  margin:0 34px 0 0;
  padding:0 15px 13px;
  color:#00814d;
  font-family:"Segoe Script","Brush Script MT",cursive;
  font-size:25px;
  font-style:italic;
  line-height:1.05;
  transform:rotate(-6deg);
}
.testimonial-note span{padding-left:22px;font-size:19px}
.testimonial-note b{position:absolute;right:-18px;top:-14px;font-size:36px;font-weight:400}
.testimonial-note:after{
  content:'';
  position:absolute;
  left:34px;
  right:-20px;
  bottom:0;
  height:2px;
  border-radius:50%;
  background:#008c4f;
  transform:rotate(-8deg);
}
.testimonials .testimonial-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px 26px;
}
.testimonials .testimonial-card{
  position:relative;
  min-height:230px;
  overflow:hidden;
  border:1px solid rgba(0,99,60,.13);
  border-radius:23px;
  background:#174b38;
  box-shadow:0 12px 30px rgba(9,57,39,.13);
  isolation:isolate;
  transition:transform .35s ease,box-shadow .35s ease;
}
.testimonials .testimonial-card:hover{
  transform:translateY(-5px);
  box-shadow:0 20px 40px rgba(9,57,39,.2);
}
.testimonial-card>img{
  position:absolute;
  inset:0;
  z-index:-2;
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  transition:transform .7s ease;
}
.testimonial-card:hover>img{transform:scale(1.035)}
.testimonials .testimonial-card:after{
  content:'';
  position:absolute;
  z-index:-1;
  inset:0;
  background:
    linear-gradient(90deg,rgba(0,70,43,.88) 0%,rgba(0,75,44,.54) 42%,rgba(0,54,34,.06) 77%),
    linear-gradient(0deg,rgba(0,56,35,.9) 0%,rgba(0,61,38,.38) 45%,rgba(0,47,29,.05) 78%);
  pointer-events:none;
}
.testimonial-card__top{
  position:absolute;
  z-index:2;
  top:26px;
  left:28px;
  right:26px;
  display:flex;
  align-items:center;
  gap:16px;
  color:#fff;
}
.testimonials .testimonial-number{
  position:static;
  display:grid;
  place-items:center;
  min-width:52px;
  padding:5px 12px;
  border:1px solid rgba(255,255,255,.72);
  border-radius:999px;
  background:linear-gradient(180deg,rgba(45,208,128,.72),rgba(0,113,67,.72));
  color:#fff;
  font-size:15px;
  font-weight:800;
  line-height:1;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.32);
}
.testimonial-card__top small{
  padding-left:16px;
  border-left:1px solid rgba(255,255,255,.34);
  font-size:9px;
  font-weight:800;
  letter-spacing:.13em;
}
.testimonials .testimonial-caption{
  position:absolute;
  z-index:2;
  left:28px;
  right:78px;
  bottom:24px;
  color:#fff;
}
.testimonials .testimonial-caption h3{
  margin:0;
  font-size:clamp(18px,1.35vw,25px);
  font-weight:750;
  line-height:1.1;
  letter-spacing:-.03em;
}
.testimonials .testimonial-caption p{
  margin:8px 0 0;
  color:rgba(255,255,255,.86);
  font-size:10px;
  font-weight:500;
}
.testimonial-arrow{
  position:absolute;
  z-index:3;
  right:19px;
  bottom:19px;
  width:48px;
  height:48px;
  border:1px solid rgba(255,255,255,.82);
  border-radius:50%;
  background:rgba(255,255,255,.94);
  color:#008c4f;
  box-shadow:0 8px 20px rgba(0,45,28,.22);
  transition:transform .25s ease,background .25s ease;
}
.testimonial-arrow:hover{transform:scale(1.08);background:#fff}
.testimonial-arrow:focus-visible{outline:3px solid #f2c34b;outline-offset:3px}
.testimonial-arrow i{
  position:absolute;
  left:14px;
  top:22px;
  width:19px;
  height:2.5px;
  border-radius:999px;
  background:currentColor;
}
.testimonial-arrow i:after{
  content:'';
  position:absolute;
  right:0;
  top:-4px;
  width:9px;
  height:9px;
  border-top:2.5px solid currentColor;
  border-right:2.5px solid currentColor;
  transform:rotate(45deg);
}

@media(max-width:1100px){
  .testimonial-intro{grid-template-columns:minmax(0,1fr) 255px;gap:25px}
  .testimonial-note{font-size:20px}.testimonial-note span{font-size:15px}
  .testimonials .testimonial-grid{gap:18px}
  .testimonials .testimonial-card{min-height:205px;border-radius:19px}
  .testimonial-card__top{top:20px;left:20px;right:20px}
  .testimonials .testimonial-caption{left:20px;bottom:20px}
}

@media(max-width:760px){
  .testimonials{padding-top:55px;padding-bottom:58px}
  .testimonial-intro{display:block;margin-bottom:30px}
  .testimonial-heading>p{gap:10px;font-size:10px}.testimonial-heading>p i{width:32px}
  .testimonials .testimonial-heading h2{font-size:34px;line-height:1.08}
  .testimonials .testimonial-heading h2 span{display:block}
  .testimonial-heading>small{margin-top:11px;font-size:11px}
  .testimonial-note{display:none}
  .testimonials .testimonial-grid{grid-template-columns:1fr;gap:16px;max-width:520px;margin:auto}
  .testimonials .testimonial-card{min-height:220px;border-radius:18px}
  .testimonial-card__top{top:18px;left:18px}
  .testimonials .testimonial-number{min-width:45px;padding:5px 10px;font-size:12px}
  .testimonial-card__top small{font-size:7px}
  .testimonials .testimonial-caption{left:18px;right:70px;bottom:20px}
  .testimonials .testimonial-caption h3{font-size:20px}
  .testimonial-arrow{right:16px;bottom:16px;width:43px;height:43px}
  .testimonial-arrow i{left:12px;top:20px;width:18px}
}

/* Customer portraits and names supplied by the client */
.testimonials .testimonial-card{
  min-height:0;
  aspect-ratio:16/9;
  border-color:rgba(25,57,47,.09);
  border-radius:30px;
  background:#d8d8d4;
}
.testimonial-card>img{object-position:center 42%}
.testimonials .testimonial-card:after{
  z-index:0;
  top:auto;
  height:35%;
  border-radius:0 0 29px 29px;
  background:rgba(100,96,90,.46);
  backdrop-filter:blur(3px);
}
.testimonial-card__top{
  top:17px;
  left:20px;
  right:auto;
}
.testimonials .testimonial-number{
  min-width:44px;
  padding:5px 10px;
  border-color:rgba(255,255,255,.72);
  background:rgba(72,94,85,.38);
  font-size:12px;
  box-shadow:none;
  backdrop-filter:blur(7px);
}
.testimonials .testimonial-caption{
  left:0;
  right:0;
  bottom:0;
  height:35%;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  padding:0 26px 18px 56px;
  text-align:center;
}
.testimonials .testimonial-caption:before{
  content:'“';
  position:absolute;
  left:23px;
  top:3px;
  color:#37d788;
  font-family:Georgia,serif;
  font-size:48px;
  font-weight:800;
  line-height:1;
  text-shadow:0 4px 12px rgba(0,72,43,.13);
}
.testimonials .testimonial-caption h3{
  margin:0;
  color:#fff;
  font-size:clamp(15px,1.12vw,22px);
  font-weight:750;
  line-height:1.22;
  text-shadow:0 2px 7px rgba(33,25,18,.28);
}

@media(max-width:1100px){
  .testimonials .testimonial-card{border-radius:24px}
  .testimonials .testimonial-card:after{border-radius:0 0 23px 23px}
  .testimonials .testimonial-caption{padding:0 18px 14px 46px}
  .testimonials .testimonial-caption:before{left:17px;top:1px;font-size:40px}
}

@media(max-width:760px){
  .testimonials .testimonial-card{aspect-ratio:16/9;border-radius:22px}
  .testimonials .testimonial-card:after{height:37%;border-radius:0 0 21px 21px}
  .testimonial-card__top{top:14px;left:15px}
  .testimonials .testimonial-caption{height:37%;padding:0 17px 15px 48px}
  .testimonials .testimonial-caption:before{left:17px;top:1px;font-size:42px}
  .testimonials .testimonial-caption h3{font-size:18px}
}

/* Interactive customer quote reveal */
.testimonials .testimonial-card{aspect-ratio:1.6;outline:none}
.testimonials .testimonial-card:after{
  height:31%;
  background:linear-gradient(90deg,rgba(14,29,40,.78),rgba(17,35,45,.67));
  backdrop-filter:blur(7px);
  transition:height .48s cubic-bezier(.2,.7,.2,1),background .35s ease;
}
.testimonials .testimonial-caption{
  height:31%;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-end;
  padding:0 76px 18px 56px;
  transition:height .48s cubic-bezier(.2,.7,.2,1),padding .48s cubic-bezier(.2,.7,.2,1);
}
.testimonials .testimonial-caption h3{
  width:100%;
  max-width:100%;
  text-align:left;
  text-wrap:balance;
}
.testimonial-quote{
  width:100%;
  max-height:0;
  margin:0;
  overflow:hidden;
  color:rgba(255,255,255,.94);
  font-size:clamp(18px,1.15vw,21px);
  font-weight:500;
  line-height:1.5;
  text-align:left;
  opacity:0;
  transform:translateY(12px);
  transition:max-height .48s ease,opacity .28s ease .03s,transform .35s ease;
}
.testimonial-play{
  position:absolute;
  z-index:4;
  right:20px;
  bottom:18px;
  width:45px;
  height:45px;
  border:2px solid rgba(255,255,255,.65);
  border-radius:50%;
  background:rgba(20,35,43,.28);
  box-shadow:0 5px 16px rgba(0,0,0,.15);
  backdrop-filter:blur(7px);
  transition:transform .3s ease,background .3s ease;
}
.testimonial-play i{
  position:absolute;
  left:17px;
  top:13px;
  width:0;
  height:0;
  border-top:8px solid transparent;
  border-bottom:8px solid transparent;
  border-left:12px solid #fff;
  filter:drop-shadow(0 2px 3px rgba(0,0,0,.16));
}
.testimonial-card:is(:hover,:focus-visible):after{height:100%;background:linear-gradient(0deg,rgba(5,30,25,.94),rgba(5,48,35,.72))}
.testimonial-card:is(:hover,:focus-visible)>img{transform:scale(1.045);filter:saturate(.82) brightness(.63)}
.testimonial-card:is(:hover,:focus-visible) .testimonial-caption{
  height:100%;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-end;
  gap:14px;
  padding:72px 34px 28px;
}
.testimonial-card:is(:hover,:focus-visible) .testimonial-caption:before{left:27px;top:45px}
.testimonial-card:is(:hover,:focus-visible) .testimonial-caption h3{font-size:clamp(29px,1.85vw,35px)}
.testimonial-card:is(:hover,:focus-visible) .testimonial-quote{
  max-height:240px;
  opacity:1;
  transform:translateY(0);
}
.testimonial-card:is(:hover,:focus-visible) .testimonial-play{transform:scale(.82);background:rgba(0,140,79,.7)}
.testimonial-card:focus-visible{box-shadow:0 0 0 4px rgba(0,140,79,.28),0 20px 40px rgba(9,57,39,.2)}

@media(max-width:1100px){
  .testimonials .testimonial-caption{padding-right:62px;padding-left:47px}
  .testimonial-play{right:14px;bottom:14px;width:40px;height:40px}
  .testimonial-play i{left:15px;top:11px}
  .testimonial-card:is(:hover,:focus-visible) .testimonial-caption{padding:54px 64px 22px 24px;gap:12px}
  .testimonial-card:is(:hover,:focus-visible) .testimonial-caption:before{left:24px;top:25px}
  .testimonial-quote{font-size:18px;line-height:1.48}
}

@media(max-width:760px){
  .testimonials .testimonial-card{aspect-ratio:1.35}
  .testimonials .testimonial-card:after,.testimonials .testimonial-caption{height:34%}
  .testimonials .testimonial-caption{padding:0 60px 16px 48px}
  .testimonial-play{right:14px;bottom:14px;width:39px;height:39px}
  .testimonial-play i{left:14px;top:10px}
  .testimonial-card:is(:hover,:focus-visible) .testimonial-caption{height:100%;padding:54px 58px 22px 22px}
  .testimonial-card:is(:hover,:focus-visible) .testimonial-caption:before{left:22px;top:25px}
  .testimonial-card:is(:hover,:focus-visible) .testimonial-caption h3{font-size:27px}
  .testimonial-quote{font-size:17px;line-height:1.48}
}

/* Why HomeQ — alternating content and future image slots */
.why{
  overflow:hidden;
  padding-top:90px;
  padding-bottom:105px;
  background:
    radial-gradient(circle at 51% 45%,rgba(126,183,145,.09),transparent 31%),
    #f8faf6;
}
.why-heading{
  margin:0 auto 38px;
  text-align:center;
}
.why-heading h2{
  margin:0;
  color:#172329;
  font-size:clamp(34px,3.1vw,58px);
  font-weight:800;
  line-height:1.12;
  letter-spacing:-1.8px;
}
.why-heading h2 span,
.why-heading h2 strong{display:block}
.why-heading h2 strong{color:#006f46}
.why-heading i{
  display:block;
  width:92px;
  height:2px;
  margin:25px auto 0;
  background:linear-gradient(90deg,transparent,#008c58 25% 75%,transparent);
}
.why-layout{
  display:grid;
  grid-template-columns:minmax(430px,1.02fr) minmax(680px,1.18fr);
  gap:22px;
  align-items:stretch;
}
.why-showcase{
  position:relative;
  min-height:548px;
  overflow:hidden;
  border-radius:0 190px 22px 22px;
  background:#edf3ea;
  box-shadow:0 18px 45px rgba(21,61,43,.08);
}
.why-intro{
  position:relative;
  z-index:2;
  width:64%;
  min-height:245px;
  padding:5px 30px 32px 0;
  background:#f8faf6;
  border-radius:0 0 92px 0;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
.why-intro h3{
  margin:0;
  color:#172329;
  font-size:clamp(25px,1.75vw,34px);
  font-weight:800;
  line-height:1.16;
  letter-spacing:-.8px;
}
.why-intro p{
  max-width:440px;
  margin:14px 0 0;
  color:#43514d;
  font-size:clamp(13px,.9vw,17px);
  line-height:1.55;
}
.why-consult{
  min-width:235px;
  min-height:50px;
  margin-top:22px;
  padding:12px 26px;
  border-radius:999px;
  background:#006f46;
  color:white;
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  font-size:16px;
  transition:transform .3s ease,background .3s ease;
}
.why-consult:hover{background:#005b3a;transform:translateY(-2px)}
.why-consult span{font-size:22px;line-height:1}
.why-main-photo{
  position:absolute;
  inset:0;
  overflow:hidden;
  background:
    linear-gradient(135deg,rgba(231,240,225,.78),rgba(188,213,183,.7)),
    repeating-linear-gradient(135deg,transparent 0 29px,rgba(0,111,70,.035) 30px 31px);
}
.why-main-photo:after,
.why-photo-slot:after{
  content:'HÌNH ẢNH';
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  color:rgba(0,111,70,.28);
  font-size:9px;
  font-weight:800;
  letter-spacing:2px;
  white-space:nowrap;
}
.why-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  grid-template-rows:repeat(2,minmax(0,1fr));
  gap:22px;
  border:0;
  border-radius:0;
  overflow:visible;
  background:transparent;
}
.why-card{
  min-width:0;
  min-height:263px;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,.95fr);
  padding:0!important;
  overflow:hidden;
  border:0!important;
  border-radius:18px;
  background:#fff;
  box-shadow:0 15px 34px rgba(24,57,43,.08);
  transition:transform .3s ease,box-shadow .3s ease;
}
.why-card:hover{transform:translateY(-5px);box-shadow:0 20px 42px rgba(24,57,43,.13)!important}
.why-card-copy{
  position:relative;
  z-index:1;
  min-width:0;
  padding:55px 16px 22px;
  background:#fff;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
.why-number{
  position:absolute;
  top:10px;
  left:10px;
  width:38px;
  height:38px;
  border-radius:50%;
  background:#e0f3e9;
  color:#006f46;
  display:grid;
  place-items:center;
  font-size:13px;
  font-weight:800;
}
.why-icon{
  width:48px;
  height:48px;
  margin-bottom:15px;
  border-radius:11px;
  background:linear-gradient(145deg,#008457,#005f3e);
  color:#fff;
  display:grid;
  place-items:center;
  box-shadow:0 7px 15px rgba(0,111,70,.2);
  font-size:20px;
  font-weight:800;
  letter-spacing:-2px;
}
.why-card h3{
  margin:0 0 9px;
  color:#006f46;
  font-size:clamp(16px,1.05vw,21px);
  font-weight:800;
  line-height:1.16;
}
.why-card p{
  margin:0;
  color:#46534f;
  font-size:clamp(11px,.68vw,14px);
  line-height:1.48;
}
.why-photo-slot{
  position:relative;
  min-width:0;
  overflow:hidden;
  background:
    linear-gradient(155deg,rgba(217,232,211,.45),rgba(147,186,161,.44)),
    repeating-linear-gradient(135deg,transparent 0 21px,rgba(0,111,70,.04) 22px 23px);
}
.why-photo-slot:after{font-size:7px;letter-spacing:1.3px}
.why-main-photo:has(img):after,
.why-photo-slot:has(img):after{content:none}
.why-main-photo img,
.why-photo-slot img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}
.why-main-photo img{object-position:center center}
.why-photo-slot img{object-position:center center;transition:transform .45s ease}
.why-card:hover .why-photo-slot img{transform:scale(1.045)}

@media(max-width:1350px){
  .why-layout{grid-template-columns:minmax(390px,.92fr) minmax(620px,1.2fr);gap:17px}
  .why-grid{gap:17px}
  .why-card{min-height:242px}
  .why-card-copy{padding:53px 13px 18px}
  .why-icon{width:43px;height:43px;margin-bottom:12px}
}

@media(max-width:1100px){
  .why{padding-top:70px;padding-bottom:80px}
  .why-layout{grid-template-columns:1fr;gap:24px}
  .why-showcase{
    min-height:0;
    max-height:520px;
    aspect-ratio:1.72;
    border-radius:0 135px 22px 22px;
  }
  .why-intro{
    width:56%;
    min-height:54%;
    padding-right:24px;
    border-radius:0 0 112px 0;
  }
  .why-main-photo img{object-position:center 56%}
  .why-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto;gap:18px}
  .why-card{min-height:230px}
}

@media(max-width:760px){
  .why{padding-top:55px;padding-bottom:65px}
  .why-heading{margin-bottom:28px}
  .why-heading h2{font-size:31px;letter-spacing:-1px}
  .why-heading i{margin-top:18px}
  .why-showcase{min-height:490px;max-height:none;aspect-ratio:auto;border-radius:0 90px 18px 18px}
  .why-intro{width:88%;min-height:245px;padding:0 20px 27px 0;border-radius:0 0 58px 0}
  .why-intro h3{font-size:25px}
  .why-intro p{font-size:13px}
  .why-consult{min-width:205px;min-height:46px;margin-top:18px;font-size:14px}
  .why-grid{grid-template-columns:1fr;gap:15px}
  .why-card{min-height:230px;grid-template-columns:1fr .9fr;border-radius:16px}
  .why-card-copy{padding:54px 18px 20px}
  .why-card h3{font-size:20px}
  .why-card p{font-size:13px}
  .why-photo-slot:after{font-size:7px}
}

/* Service packages — image-led three-card composition */
.packages{
  position:relative;
  isolation:isolate;
  padding-top:88px;
  padding-bottom:100px;
  background:
    radial-gradient(circle at 50% 55%,rgba(129,196,154,.13),transparent 42%),
    #f8faf6;
}
.packages:before{content:none}
.packages-heading{
  max-width:950px;
  margin:0 auto 44px;
  text-align:center;
}
.packages-heading>p{
  margin:0 0 8px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  color:#00734a;
  font-size:14px;
  font-weight:800;
  letter-spacing:.4px;
}
.packages-heading>p span{
  padding:6px 28px;
  border-radius:999px;
  background:#edf7ef;
}
.packages-heading>p i{width:72px;height:1px;background:#169264}
.packages-heading h2{
  margin:0;
  color:#10251d;
  font-size:clamp(42px,4vw,67px);
  font-weight:850;
  line-height:1.05;
  letter-spacing:-2px;
}
.packages-heading h2 em{color:#00734a;font-style:normal}
.packages-heading small{
  display:block;
  margin-top:10px;
  color:#69766f;
  font-size:clamp(14px,1.05vw,20px);
}
.packages .package-grid{
  max-width:1780px;
  margin:0 auto;
  padding:0;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
  align-items:stretch;
}
.packages .package-card{
  position:relative;
  min-width:0;
  min-height:575px;
  margin:0;
  padding:0 24px 20px;
  overflow:visible;
  border:1px solid rgba(29,84,57,.1);
  border-radius:28px;
  background:rgba(255,255,255,.95);
  box-shadow:0 20px 48px rgba(17,64,43,.10);
  display:flex;
  flex-direction:column;
  text-align:left;
  transition:transform .35s ease,box-shadow .35s ease;
}
.packages .package-card:hover{transform:translateY(-7px);box-shadow:0 28px 58px rgba(17,64,43,.16)}
.packages .package-card.featured{
  min-height:575px;
  margin:0;
  border-color:#00734a;
  background:linear-gradient(145deg,#005c3b,#008054);
  color:white;
  transform:translateY(-10px);
}
.packages .package-card.featured:hover{transform:translateY(-17px)}
.package-hero{
  position:relative;
  min-height:280px;
  margin:0 -24px 16px;
  padding:34px 28px 24px;
  overflow:hidden;
  border-radius:28px 28px 18px 18px;
  display:flex;
  align-items:flex-end;
}
.package-hero>img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  transition:transform .5s ease;
}
.package-card:hover .package-hero>img{transform:scale(1.035)}
.package-hero:after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(255,255,255,.98) 4%,rgba(255,255,255,.92) 37%,rgba(255,255,255,.13) 78%);
}
.package-card--complete .package-hero:after{
  background:linear-gradient(90deg,rgba(0,82,53,.97),rgba(0,91,59,.80) 52%,rgba(0,91,59,.16));
}
.package-hero-copy{position:relative;z-index:1;width:69%;min-width:0}
.package-icon{
  width:60px;
  height:60px;
  margin-bottom:16px;
  border-radius:50%;
  background:#e5f4e9;
  color:#00734a;
  display:grid;
  place-items:center;
  font-size:32px;
  font-weight:700;
}
.package-card--complete .package-icon{background:#059866;color:#fff}
.package-card--complete li.package-addon-gold{color:#b28a2e;font-weight:700}
.package-card--complete li.package-addon-gold:before{color:#c39a3b}
.package-card .package-subtitle,.package-card .package-description{visibility:hidden}
.package-card--premium .package-icon{width:68px;height:68px;padding:4px;border:4px solid #fff;background:#fff;overflow:hidden;box-shadow:0 4px 12px rgba(0,93,57,.12)}
.package-card--premium .package-icon img{display:block;width:100%;height:100%;object-fit:cover;border-radius:50%}
.packages .package-card h3{
  margin:0;
  color:#102c21;
  font-size:clamp(28px,2.05vw,39px);
  font-weight:850;
  letter-spacing:-1px;
}
.packages .package-card--complete h3{color:#fff}
.packages .package-subtitle{
  margin:5px 0 0;
  color:#70a187;
  font-size:17px;
  font-weight:650;
}
.packages .package-card--complete .package-subtitle{color:#d7ede2}
.package-description{
  max-width:340px;
  margin:14px 0 0;
  color:#344b42;
  font-size:14px;
  line-height:1.55;
}
.package-card--complete .package-description{color:#eef9f3}
.packages .package-card ul{
  flex:1;
  margin:0 0 12px;
  padding:18px 22px;
  border:0;
  border-radius:18px;
  background:#f5f8f4;
  list-style:none;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:13px;
  color:#233a31;
  font-size:14px;
}
.packages .package-card--complete ul{background:#eef8eb;color:#17392b}
.packages .package-card li{position:relative;padding:0 0 0 36px}
.packages .package-card li:before{
  content:'✓';
  position:absolute;
  left:0;
  top:50%;
  width:24px;
  height:24px;
  border-radius:50%;
  background:#7fc6a2;
  color:#fff;
  display:grid;
  place-items:center;
  transform:translateY(-50%);
  font-size:13px;
  font-weight:900;
}
.packages .package-card--complete li:before{background:#00895b}
.packages .package-card--premium li:before{background:#00a878}
.packages .package-card--premium ul{color:#168dcc}
.packages .package-card--premium li{font-weight:700}
.packages .package-card--premium li:first-child{color:#233a31}
.packages .package-card--premium li:first-child{font-weight:400}
.packages .package-card>.button{
  width:100%;
  min-height:58px;
  margin:0;
  padding:10px 22px;
  border-radius:999px;
  background:linear-gradient(90deg,#008b59,#006e47);
  color:#fff;
  justify-content:center;
  gap:26px;
  font-size:16px;
  font-weight:750;
}
.packages .package-card>.button span{
  width:36px;
  height:36px;
  border-radius:50%;
  background:#effaf3;
  color:#00734a;
  display:grid;
  place-items:center;
  font-size:19px;
}
.packages .package-card--complete>.button{background:#fff;color:#00734a}
.packages .package-card--complete>.button span{background:#00734a;color:#fff}
.packages .package-badge{
  z-index:3;
  top:-16px;
  left:25%;
  right:25%;
  min-width:max-content;
  padding:10px 20px;
  border:1px solid #04905d;
  border-radius:999px;
  background:#fff;
  color:#008253;
  font-size:11px;
  font-weight:850;
  letter-spacing:.3px;
  text-align:center;
  box-shadow:0 8px 18px rgba(0,91,59,.12);
}

@media(max-width:1100px){
  .packages{padding-top:72px;padding-bottom:82px}
  .packages .package-grid{gap:16px}
  .packages .package-card{min-height:540px;padding:0 16px 16px}
  .package-hero{min-height:255px;margin:0 -16px 14px;padding:29px 20px 20px}
  .package-hero-copy{width:78%}
  .package-icon{width:52px;height:52px;margin-bottom:12px;font-size:28px}
  .packages .package-card ul{padding:16px 14px;font-size:12px;gap:12px}
  .packages .package-card li{padding-left:31px}
  .packages .package-badge{left:13%;right:13%;font-size:9px}
}

@media(max-width:760px){
  .packages{padding-top:58px;padding-bottom:70px}
  .packages-heading{margin-bottom:36px}
  .packages-heading>p{gap:8px;font-size:10px}
  .packages-heading>p span{padding:6px 15px}
  .packages-heading>p i{width:34px}
  .packages-heading h2{font-size:39px;letter-spacing:-1px}
  .packages-heading small{font-size:13px;line-height:1.5}
  .packages .package-grid{grid-template-columns:1fr;gap:34px;max-width:460px}
  .packages .package-card,.packages .package-card.featured{min-height:555px;margin:0;transform:none}
  .packages .package-card.featured:hover,.packages .package-card:hover{transform:translateY(-5px)}
  .package-hero{min-height:270px}
  .package-hero-copy{width:74%}
  .packages .package-card h3{font-size:31px}
  .package-description{font-size:13px}
  .packages .package-card ul{font-size:13px}
  .packages .package-badge{left:50%;right:auto;transform:translateX(-50%)}
}

/* Interactive 3D smart-room demo */
.demo.demo-3d{
  overflow:hidden;
  padding-top:58px;
  padding-bottom:78px;
  background:
    radial-gradient(circle at 72% 45%,rgba(31,143,92,.2),transparent 36%),
    linear-gradient(135deg,#00432e,#006541 54%,#003d2a)!important;
  color:#fff;
}
.demo3d-heading{max-width:900px;margin:0 auto 38px;text-align:center}
.demo3d-heading>span{
  display:inline-block;
  padding:7px 24px;
  border:1px solid rgba(190,233,206,.38);
  border-radius:999px;
  background:rgba(235,255,242,.08);
  color:#d8eee0;
  font-size:11px;
  font-weight:750;
  letter-spacing:1.7px;
}
.demo3d-heading h2{
  margin:10px 0 4px;
  color:#fff;
  font-size:clamp(35px,3.5vw,58px);
  font-weight:850;
  letter-spacing:-1.8px;
}
.demo3d-heading h2 em{color:#bce3c7}
.demo3d-heading p{color:#cfdfd5;font-size:16px}
.demo3d-layout{
  display:grid;
  grid-template-columns:minmax(235px,.64fr) minmax(270px,.68fr) minmax(570px,1.65fr);
  gap:22px;
  align-items:center;
  max-width:1760px;
  margin:0 auto;
}
.demo-3d .demo-copy{padding:10px 0;align-self:center}
.demo-3d .demo-copy .overline{margin-bottom:12px;color:#37ce83;font-size:13px;font-weight:800;letter-spacing:2px}
.demo-3d .demo-copy h3{color:#fff;font-size:clamp(28px,2.2vw,39px);font-weight:800;line-height:1.2;letter-spacing:-.8px}
.demo-3d .demo-copy>p:not(.overline){margin:21px 0 0;color:#c1d4c8;font-size:14px;line-height:1.75}
.demo-benefits{list-style:none;margin:22px 0 0;padding:18px 0 0;border-top:1px solid rgba(206,238,216,.25);display:grid;gap:10px;color:#e9f3ec;font-size:12px}
.demo-benefits li{position:relative;padding-left:29px}
.demo-benefits li:before{content:'⌾';position:absolute;left:0;top:-1px;color:#8bd7a7;font-size:17px}
.demo-status-copy{min-height:48px;padding:11px 14px!important;border-left:3px solid #35c980;background:rgba(255,255,255,.06);border-radius:0 9px 9px 0;font-size:11px!important}
.scene-context-label{margin:18px 0 7px;color:#9ff0bf;font-size:9px!important;font-weight:800;letter-spacing:1.6px;text-transform:uppercase}.scene-context-label strong{color:#fff;font-weight:900}.demo-status-copy{position:relative;min-height:58px!important;padding:14px 16px!important;border:1px solid rgba(119,239,174,.36)!important;border-left:4px solid #35d995!important;border-radius:0 12px 12px 0!important;background:linear-gradient(135deg,rgba(41,160,111,.38),rgba(12,91,64,.76))!important;box-shadow:0 10px 25px rgba(0,28,17,.2),inset 0 1px rgba(255,255,255,.08);color:#f1fff5;font-size:12px!important;font-weight:600;line-height:1.6!important}
.scene-context-box{width:100%;margin-top:18px;padding:16px 18px 17px;border:1px solid rgba(149,255,194,.72);border-radius:16px;background:linear-gradient(135deg,#08784f 0%,#005b3e 58%,#004b35 100%);box-shadow:0 14px 30px rgba(0,56,34,.3),0 0 0 4px rgba(95,224,151,.1);color:#fff}.scene-context-box .scene-context-label{margin:0 0 8px;color:#baffd2}.scene-context-box .demo-status-copy{margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:#f5fff8}
.demo-3d .demo-copy>.button{margin-top:18px;min-width:205px;border-radius:999px;background:linear-gradient(90deg,#00a767,#05c67c);font-size:14px;font-weight:750}

.phone-demo{position:relative;z-index:5;display:grid;place-items:center;filter:drop-shadow(0 28px 32px rgba(0,0,0,.35))}
.phone-shell{
  position:relative;
  width:min(100%,315px);
  height:620px;
  padding:11px;
  border:3px solid #87958f;
  border-radius:44px;
  background:linear-gradient(145deg,#333d3a,#080d0c 43%,#48524e);
  box-shadow:inset 0 0 0 2px #111,0 12px 0 -6px #020504;
  transform:perspective(1100px) rotateY(4deg) rotateZ(-1deg);
}
.phone-shell:before,.phone-shell:after{content:'';position:absolute;left:-6px;width:4px;border-radius:4px;background:#68716e}
.phone-shell:before{top:115px;height:66px}.phone-shell:after{top:197px;height:42px}
.phone-speaker{position:absolute;z-index:7;top:17px;left:50%;width:96px;height:22px;transform:translateX(-50%);border-radius:0 0 15px 15px;background:#050a08}
.phone-screen{
  position:relative;
  height:100%;
  overflow:hidden;
  padding:18px 13px 62px;
  border-radius:34px;
  background:
    radial-gradient(circle at 18% 0,rgba(28,172,103,.24),transparent 27%),
    linear-gradient(180deg,#003a28,#00291e 58%,#063225);
  color:#eaf7ef;
}
.phone-status{height:20px;padding:0 7px;display:flex;justify-content:space-between;align-items:center;font-size:9px}
.phone-brand{display:flex;justify-content:space-between;align-items:center;padding:8px 5px 6px}.phone-brand strong{font-size:19px}.phone-brand span{font-size:26px;font-weight:300}
.phone-label{margin:4px 5px 7px;color:#76a98e;font-size:8px;font-weight:750;letter-spacing:1.3px}
.phone-scenes{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:9px}
.phone-scenes button{
  min-width:0;
  min-height:68px;
  padding:8px 3px;
  border:1px solid rgba(157,207,177,.13);
  border-radius:10px;
  background:rgba(255,255,255,.035);
  color:#dcece2;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:4px;
  font-size:9px;
}
.phone-scenes button i{font-style:normal;font-size:25px;line-height:1}
.phone-scenes button.selected{border-color:#d7f1df;background:#e4f4e8;color:#006341;box-shadow:0 8px 20px rgba(0,0,0,.18)}
.phone-devices{display:grid;gap:5px}
.phone-device{
  min-height:59px;
  padding:7px 8px;
  border-radius:9px;
  background:rgba(255,255,255,.055);
  display:grid;
  grid-template-columns:29px minmax(0,1fr) auto;
  gap:7px;
  align-items:center;
}
.phone-device .device-icon{font-size:21px;text-align:center;color:#a9d7b9}
.phone-device b,.phone-device small{display:block;line-height:1.22}.phone-device b{font-size:10px}.phone-device small{margin-top:2px;color:#85aa94;font-size:8px}
.phone-device input[type=range]{width:100%;height:3px;margin-top:6px;display:block;accent-color:#26c47a;cursor:pointer}
.device-toggle{position:relative;width:34px;height:19px;border-radius:999px;background:#47665a;transition:background .25s}
.device-toggle:after{content:'';position:absolute;top:3px;left:3px;width:13px;height:13px;border-radius:50%;background:#c8d6ce;transition:transform .25s,background .25s}
.device-toggle.on{background:#08a866}.device-toggle.on:after{transform:translateX(15px);background:#fff}
.temp-buttons{display:flex;gap:4px}.temp-buttons button{width:24px;height:24px;border-radius:50%;background:#3d6454;color:#fff;font-size:14px}
.phone-device--simple{min-height:44px}
.phone-nav{position:absolute;left:0;right:0;bottom:0;height:58px;padding:7px 12px;background:rgba(2,29,21,.96);display:grid;grid-template-columns:repeat(4,1fr)}
.phone-nav>span{color:#557667;display:flex;flex-direction:column;align-items:center;font-size:18px;line-height:1}.phone-nav>span.active{color:#e9fff0}.phone-nav small{margin-top:4px;font-size:6px}

.room3d{
  --light-level:.7;
  --curtain-cover:10%;
  --room-darkness:.08;
  position:relative;
  height:610px;
  min-width:0;
  overflow:hidden;
  border:1px solid rgba(225,247,232,.18);
  border-radius:26px;
  background:#76563d;
  box-shadow:0 35px 80px rgba(0,0,0,.32);
  perspective:1100px;
  isolation:isolate;
}
.room3d-ceiling{position:absolute;z-index:2;left:-5%;right:-5%;top:-4%;height:25%;background:linear-gradient(175deg,#e7d6c1,#f3e8da 70%,#8c6747);clip-path:polygon(0 0,100% 0,91% 100%,8% 100%);box-shadow:0 16px 25px rgba(77,43,21,.3)}
.room3d-ceiling:after{content:'';position:absolute;left:8%;right:8%;bottom:6px;height:5px;background:rgba(255,193,104,calc(.25 + var(--light-level)));box-shadow:0 0 24px 7px rgba(255,177,77,calc(var(--light-level) * .65))}
.room3d-ceiling i{position:absolute;bottom:24%;width:8px;height:8px;border-radius:50%;background:#fff4cf;box-shadow:0 0 14px 5px rgba(255,210,136,var(--light-level))}.room3d-ceiling i:nth-child(1){left:17%}.room3d-ceiling i:nth-child(2){left:42%}.room3d-ceiling i:nth-child(3){left:65%}.room3d-ceiling i:nth-child(4){left:84%}
.room3d-back-wall{position:absolute;z-index:0;left:0;right:0;top:17%;bottom:21%;background:linear-gradient(90deg,#9b8066 0 1px,#cbb496 1px 69%,#856449 69%);box-shadow:inset 0 24px 45px rgba(63,38,19,.19)}
.room3d-side-wall{position:absolute;z-index:1;right:-3%;top:16%;bottom:18%;width:27%;background:repeating-linear-gradient(90deg,#513a29 0 2px,#75563c 3px 44px);transform-origin:right center;transform:rotateY(-18deg);box-shadow:-14px 0 30px rgba(40,25,14,.2)}
.room3d-shelf{position:absolute;inset:10% 12%;border:5px solid #493321;display:grid;grid-template-rows:repeat(3,1fr)}.room3d-shelf i{border-bottom:4px solid #4b3524;box-shadow:inset 0 -12px 22px rgba(255,177,74,calc(var(--light-level) * .35))}
.room3d-floor{position:absolute;z-index:2;left:-8%;right:-8%;bottom:-10%;height:41%;background:repeating-linear-gradient(96deg,#8b684b 0 2px,#c39b70 3px 62px);transform-origin:bottom;transform:rotateX(58deg);box-shadow:inset 0 18px 28px rgba(49,27,13,.28)}
.room3d-window{position:absolute;left:5%;top:17%;width:43%;height:55%;overflow:hidden;border:9px solid #5c4634;background:linear-gradient(#7ec1d0,#c8e3d0 58%,#6b9b73);box-shadow:0 10px 30px rgba(28,30,22,.25)}
.room3d-window:before{content:'';position:absolute;z-index:2;left:49%;top:0;bottom:0;width:5px;background:#5c4634}.room3d-city{position:absolute;inset:32% 0 0;background:repeating-linear-gradient(90deg,#7d9d8c 0 17px,#aec2a9 18px 29px,#6b8e7c 30px 43px);clip-path:polygon(0 48%,10% 30%,17% 55%,25% 14%,35% 45%,43% 24%,51% 56%,62% 8%,70% 45%,82% 18%,89% 52%,100% 30%,100% 100%,0 100%)}
.room3d-curtain{position:absolute;z-index:4;top:0;bottom:0;width:var(--curtain-cover);min-width:2px;background:repeating-linear-gradient(90deg,#a98c72,#d9c4aa 11px,#9d8067 21px);transition:width .75s cubic-bezier(.2,.75,.2,1)}.curtain-left{left:0}.curtain-right{right:0}
.room3d-ac{position:absolute;right:23%;top:13%;width:23%;height:9%;border-radius:9px 9px 4px 4px;background:linear-gradient(#f4f1e9,#c7c3b9);box-shadow:0 8px 16px rgba(56,40,25,.2)}.room3d-ac:after{content:'';position:absolute;left:8%;right:8%;bottom:7px;height:4px;background:#646660}.room3d-ac span{position:absolute;right:10%;top:22%;width:5px;height:5px;border-radius:50%;background:#24b56f}
.room3d-tv{position:absolute;right:9%;top:31%;width:34%;height:30%;padding:7px;border-radius:4px;background:#151b19;box-shadow:0 9px 20px rgba(0,0,0,.34);transition:filter .4s,opacity .4s}.tv-picture{position:relative;width:100%;height:100%;overflow:hidden;background:linear-gradient(155deg,#87b9be 0 38%,#294d45 39% 58%,#85a77a 59%);clip-path:inset(0)}.tv-picture:before{content:'';position:absolute;left:8%;right:8%;bottom:16%;height:43%;background:linear-gradient(145deg,transparent 0 25%,#e5ece2 26% 35%,#49655d 36% 56%,#dce7dd 57% 65%,transparent 66%);clip-path:polygon(0 100%,22% 38%,38% 75%,60% 9%,100% 100%)}.tv-picture span{position:absolute;left:8px;bottom:5px;color:#fff;font-size:6px;letter-spacing:1px}.room3d.tv-off .room3d-tv{filter:brightness(.08);opacity:.86}.room3d.tv-off .tv-picture span{display:none}
.room3d-console{position:absolute;right:6%;top:63%;width:40%;height:10%;border-radius:3px;background:linear-gradient(#c8b9a3,#8e7357);box-shadow:0 13px 0 -7px #4e3928}
.room3d-sofa{position:absolute;z-index:5;left:19%;bottom:15%;width:50%;height:22%;border-radius:18px 18px 7px 7px;background:linear-gradient(#d9cfbd,#a99780);box-shadow:0 20px 28px rgba(45,28,15,.35)}.room3d-sofa:after{content:'';position:absolute;left:-5%;right:-5%;bottom:-7%;height:42%;border-radius:8px;background:#b9aa95}.room3d-sofa i{position:absolute;z-index:2;top:8%;width:20%;height:52%;border-radius:8px;background:#ddd3c2;box-shadow:0 3px 9px rgba(71,49,31,.15)}.room3d-sofa i:nth-child(1){left:4%}.room3d-sofa i:nth-child(2){left:27%;background:#536e4e}.room3d-sofa i:nth-child(3){left:51%}.room3d-sofa i:nth-child(4){left:75%;background:#6d7e5b}
.room3d-table{position:absolute;z-index:7;left:46%;bottom:8%;width:27%;height:9%;border-radius:50%;background:linear-gradient(#4c3524,#241910);box-shadow:0 13px 0 -8px #2a1d14}.room3d-table span{position:absolute;left:47%;top:35%;width:18%;height:42%;border-radius:45%;background:#cad5b8}
.room3d-lamp{position:absolute;z-index:4;right:43%;bottom:28%;width:8px;height:28%;background:#4b3b2d}.room3d-lamp i{position:absolute;left:-27px;top:-7px;width:62px;height:45px;background:#ead7b4;clip-path:polygon(20% 0,80% 0,100% 100%,0 100%);filter:drop-shadow(0 0 calc(18px * var(--light-level)) rgba(255,192,102,var(--light-level)))}
.room3d-light-wash{position:absolute;z-index:8;inset:0;background:radial-gradient(circle at 55% 8%,rgba(255,206,128,calc(var(--light-level) * .45)),transparent 56%);pointer-events:none;transition:background .45s}
.room3d-darkness{position:absolute;z-index:9;inset:0;background:#03130d;opacity:var(--room-darkness);pointer-events:none;transition:opacity .45s}
.room-chip{position:absolute;z-index:12;min-width:132px;padding:8px 11px;border:1px solid rgba(255,255,255,.18);border-radius:12px;background:rgba(18,37,31,.66);backdrop-filter:blur(10px);display:flex;align-items:center;gap:9px;color:#fff;box-shadow:0 8px 20px rgba(0,0,0,.18)}.room-chip>span{font-size:23px}.room-chip b{font-size:9px;line-height:1.25}.room-chip small{display:block;margin-top:2px;color:#d5e2d9;font-size:8px}.chip-light{top:15%;left:54%}.chip-curtain{top:39%;left:7%}.chip-temp{top:15%;right:4%}.chip-tv{top:48%;right:3%}
.room3d-stats{position:absolute;z-index:13;left:17%;right:8%;bottom:3%;min-height:72px;padding:10px 15px;border:1px solid rgba(255,255,255,.25);border-radius:22px;background:rgba(46,45,37,.62);backdrop-filter:blur(13px);display:grid;grid-template-columns:repeat(3,1fr);color:#fff}.room3d-stats>div{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.room3d-stats>div+div{border-left:1px solid rgba(255,255,255,.27)}.room3d-stats span{font-size:7px;letter-spacing:1.2px}.room3d-stats strong{font-size:17px}
.room3d:after{content:'CHẾ ĐỘ AN NINH ĐANG BẬT';position:absolute;z-index:14;top:13px;left:13px;padding:5px 9px;border:1px solid rgba(164,255,197,.55);border-radius:999px;background:#008c50;color:white;font-size:8px;font-weight:800;letter-spacing:.6px;box-shadow:0 5px 13px rgba(0,84,49,.22)}
.room3d.security-off:after{content:'CHẾ ĐỘ AN NINH ĐANG TẮT';border-color:rgba(255,255,255,.32);background:#a23b34;box-shadow:none}

@media(max-width:1350px){
  .demo3d-layout{grid-template-columns:minmax(220px,.68fr) 270px minmax(500px,1.45fr);gap:16px}
  .phone-shell{height:590px}
  .room3d{height:570px}
  .room-chip{min-width:115px;padding:7px 9px}.chip-curtain{left:3%}.room3d-stats{left:12%;right:5%}
}

@media(max-width:1100px){
  .demo.demo-3d{padding-top:55px;padding-bottom:70px}
  .demo3d-layout{grid-template-columns:300px minmax(0,1fr);gap:24px}
  .demo-3d .demo-copy{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:12px 34px;align-items:start}
  .demo-3d .demo-copy .overline,.demo-3d .demo-copy h3{grid-column:1}
  .demo-3d .demo-copy>p:not(.overline),.demo-benefits{grid-column:2}
  .demo-status-copy,.demo-3d .demo-copy>.button{grid-column:1}
  .demo-benefits{grid-row:1/5;margin:0}
  .room3d{height:560px}
}

@media(max-width:760px){
  .demo.demo-3d{padding:48px 4% 60px}
  .demo3d-heading{margin-bottom:30px}.demo3d-heading h2{font-size:34px}.demo3d-heading p{font-size:13px}
  .demo3d-layout{grid-template-columns:1fr;gap:30px}
  .demo-3d .demo-copy{display:flex;grid-column:auto;gap:0}.demo-benefits{margin-top:20px}.demo-status-copy{margin-top:18px!important}
  .phone-shell{width:300px;height:585px;transform:none}
  .room3d{height:465px;border-radius:20px}
  .room-chip{min-width:100px;padding:6px 7px}.room-chip>span{font-size:18px}.room-chip b{font-size:8px}.chip-light{top:13%;left:43%}.chip-temp{top:23%;right:2%}.chip-curtain{top:37%;left:2%}.chip-tv{top:49%;right:2%}
  .room3d-sofa{left:12%;width:60%}.room3d-window{width:48%}.room3d-tv{right:6%;width:38%}.room3d-stats{left:3%;right:3%;bottom:2%;min-height:63px}.room3d-stats strong{font-size:14px}
}

/* WebGL room layer: the CSS room above remains as the offline/compatibility fallback. */
.room3d-canvas{
  position:absolute;
  z-index:10;
  inset:0;
  width:100%;
  height:100%;
  display:block;
  opacity:0;
  cursor:grab;
  touch-action:none;
  transition:opacity .5s ease;
}
.room3d.is-dragging .room3d-canvas{cursor:grabbing}
.room3d.webgl-ready .room3d-canvas{opacity:1}
.room3d.webgl-ready>.room3d-ceiling,
.room3d.webgl-ready>.room3d-back-wall,
.room3d.webgl-ready>.room3d-side-wall,
.room3d.webgl-ready>.room3d-floor,
.room3d.webgl-ready>.room3d-sofa,
.room3d.webgl-ready>.room3d-table,
.room3d.webgl-ready>.room3d-lamp,
.room3d.webgl-ready>.room3d-light-wash,
.room3d.webgl-ready>.room3d-darkness{visibility:hidden}
.room3d-loader{
  position:absolute;
  z-index:16;
  inset:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  color:#fff;
  background:linear-gradient(145deg,rgba(2,43,29,.9),rgba(5,22,18,.94));
  text-align:center;
  transition:opacity .45s ease,visibility .45s ease;
}
.room3d-loader[hidden]{display:flex;opacity:0;visibility:hidden;pointer-events:none}
.room3d-retry{position:absolute;z-index:17;top:24px;right:24px;left:auto;display:none;transform:none;padding:11px 17px;border:1px solid rgba(255,255,255,.32);border-radius:999px;background:#008c50;color:#fff;font:700 12px/1 inherit;box-shadow:0 12px 24px rgba(0,0,0,.22);cursor:pointer}.room3d.webgl-fallback .room3d-retry:not([hidden]){display:block}.room3d-retry:hover{background:#006c3e}
.room3d-loader span{width:36px;height:36px;border:3px solid rgba(255,255,255,.2);border-top-color:#48e3a1;border-radius:50%;animation:room3d-spin .8s linear infinite}
.room3d-loader b{font-size:13px;letter-spacing:.7px}
.room3d-loader small{font-size:9px;color:#c4ddd2;letter-spacing:.25px}
.room3d.webgl-ready .room-chip,.room3d.webgl-ready .room3d-stats{z-index:13}
.room3d.webgl-ready .room-chip{pointer-events:none;background:rgba(9,31,25,.62)}
.room3d.webgl-ready .room3d-stats{pointer-events:none;background:rgba(22,33,28,.68)}
@keyframes room3d-spin{to{transform:rotate(360deg)}}

@media(prefers-reduced-motion:reduce){
  .room3d-loader span{animation:none}
}

/* Preserve the replaceable large visual at the left of the six methods. */
@media(min-width:1101px){
  .why-layout{display:grid;grid-template-columns:minmax(390px,.94fr) minmax(610px,1.3fr);gap:28px;align-items:stretch}
  .why-showcase{position:relative;display:block;min-height:548px;overflow:hidden;border-radius:0 170px 24px 24px;background:#edf3ea;box-shadow:0 18px 45px rgba(21,61,43,.08)}
  .why-intro{position:relative;z-index:2;width:67%;min-height:252px;padding:4px 28px 30px 0;display:flex;flex-direction:column;align-items:flex-start;border-radius:0 0 112px 0;background:#f8fbf7}
  .why-intro h3{margin:0;color:#172720;font-size:clamp(25px,2vw,36px);font-weight:800;line-height:1.13;letter-spacing:-1.5px}
  .why-intro p{margin:20px 0 0;color:#53615b;font-size:clamp(13px,1vw,17px);line-height:1.55}
  .why-consult{display:flex;align-items:center;justify-content:space-between;width:210px;min-height:51px;margin-top:25px;padding:0 24px;border-radius:28px;background:#00784b;color:#fff;font-size:15px;font-weight:700;box-shadow:0 12px 26px rgba(0,104,63,.16)}
  .why-consult span{font-size:24px;font-weight:400}.why-main-photo{position:absolute;inset:0}.why-main-photo:after{content:"";position:absolute;inset:38% 0 0;background:linear-gradient(180deg,transparent,rgba(7,45,30,.12))}.why-main-photo img{width:100%;height:100%;object-fit:cover;object-position:center}
  .why-grid{gap:18px}.why-card{min-height:265px;border-radius:23px}.why-photo-slot{height:68%}.why-card-copy{min-height:111px;padding:27px 13px 14px 94px;border-radius:56% 46% 0 0 / 37px 37px 0 0}.why-icon{top:-25px;left:15px;width:61px;height:61px;border-width:5px;font-size:21px}.why-card h3{margin-bottom:5px;font-size:clamp(17px,1.35vw,23px);letter-spacing:-.8px}.why-card h3:after{width:25px;height:2px;margin-top:6px}.why-card p{font-size:clamp(10px,.78vw,13px);line-height:1.32}
}
@media(max-width:1100px){.why-showcase{display:block}}

/* Solution carousel: final cascade after legacy carousel rules. */
.solution-card:before{display:none!important}
.solutions:before{display:none!important}
.solutions{padding-top:38px!important;padding-bottom:76px!important}
.solutions .center-heading{margin-bottom:20px!important}
.solution-carousel{max-width:1720px!important;margin:auto!important;padding:0 74px!important}
.solution-cards{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr) minmax(0,1fr)!important;gap:34px!important;align-items:end!important;min-height:0!important;padding-top:48px!important}
.solution-card,.solution-card.featured{position:relative!important;display:flex!important;flex-direction:column!important;min-height:415px!important;padding:137px 30px 25px!important;overflow:visible!important;border:0!important;border-radius:27px!important;background:#00633a!important;box-shadow:0 20px 46px rgba(9,72,45,.16)!important;isolation:isolate!important;transform:none!important}
.solution-card.featured{min-height:430px!important;transform:translateY(-12px)!important}
.solution-card .solution-photo.image-placeholder{position:absolute!important;z-index:0!important;inset:0!important;width:auto!important;height:auto!important;min-height:0!important;overflow:hidden!important;border:0!important;border-radius:27px!important;box-shadow:none!important}
.solution-card:after{z-index:1!important;border-radius:inherit!important;background:linear-gradient(90deg,rgba(0,60,35,.96) 0%,rgba(0,95,55,.82) 49%,rgba(0,57,34,.22) 100%)!important}
.solution-number{z-index:3!important;top:24px!important;left:24px!important;padding:8px 15px!important}
.solution-icon{z-index:5!important;top:-66px!important;right:26px!important;left:auto!important;display:grid!important;place-items:center!important;width:132px!important;height:132px!important;transform:none!important;border:8px solid rgba(255,255,255,.9)!important;border-radius:50%!important;background:radial-gradient(circle at 32% 27%,#eff9ec,#b8dcae 66%,#8abc85)!important;box-shadow:0 18px 38px rgba(14,77,45,.18)!important}
.solution-icon .morph-icon{width:47px!important;height:47px!important}.solution-icon:after{content:attr(data-label)!important;position:absolute!important;right:14px!important;bottom:15px!important;left:14px!important;color:#176340!important;font-size:6px!important;font-weight:800!important;line-height:1.35!important;text-align:center!important;text-transform:uppercase!important}
.solution-emblem{position:absolute!important;z-index:5!important;top:-67px!important;right:20px!important;left:auto!important;display:grid!important;width:174px!important;height:174px!important;place-items:center!important;overflow:hidden!important;transform:none!important;border:9px solid rgba(255,255,255,.9)!important;border-radius:50%!important;background:radial-gradient(circle at 32% 27%,#f7fff4,#c7edc2 66%,#99ce93)!important;box-shadow:0 18px 38px rgba(14,77,45,.18)!important}.solution-emblem img{display:block!important;width:88%!important;height:88%!important;object-fit:contain!important;filter:drop-shadow(0 7px 9px rgba(0,73,45,.16))!important}.solution-emblem + .solution-icon{display:none!important}
.solution-emblem--framed{border:0!important;background:transparent!important;box-shadow:none!important}.solution-emblem--framed img{width:100%!important;height:100%!important;filter:none!important}
.solution-kicker{z-index:3!important;top:121px!important;left:30px!important;margin:0!important;color:#b8dfc3!important;font-size:9px!important}
.solution-card h3{z-index:3!important;max-width:270px!important;margin:23px 0 14px!important;color:#fff!important;font-size:clamp(27px,2vw,37px)!important;font-weight:850!important;line-height:1.06!important;letter-spacing:-1.5px!important}
.solution-card p:not(.solution-kicker){z-index:3!important;max-width:280px!important;min-height:0!important;margin:0!important;color:#ecfff1!important;font-size:14px!important;line-height:1.5!important}
.solution-card>a{z-index:3!important;align-self:flex-start!important;margin-top:auto!important;padding:11px 13px 11px 20px!important;border:0!important;border-radius:999px!important;background:#f5fff6!important;color:#087244!important;font-size:13px!important;font-weight:800!important}.solution-card>a span{display:grid!important;width:34px!important;height:34px!important;place-items:center!important;border-radius:50%!important;background:#009252!important;color:#fff!important}
.carousel-arrow{z-index:6!important;top:54%!important;width:54px!important;height:54px!important;transform:translateY(-50%)!important;background:#008c50!important;color:#fff!important}.carousel-arrow:hover{transform:translateY(-50%) scale(1.08)!important}
@media(max-width:1100px){.solution-carousel{padding:0 53px!important}.solution-cards{gap:20px!important}.solution-card,.solution-card.featured{min-height:390px!important;padding:124px 21px 21px!important}.solution-card.featured{transform:none!important}.solution-icon{width:112px!important;height:112px!important;top:-56px!important;right:16px!important}.solution-icon .morph-icon{width:40px!important;height:40px!important}.solution-icon:after{right:10px!important;bottom:11px!important;left:10px!important;font-size:5px!important}.solution-emblem{top:-56px!important;right:12px!important;width:145px!important;height:145px!important;border-width:7px!important}.solution-kicker{top:105px!important;left:21px!important}.solution-card h3{font-size:27px!important}.solution-card p:not(.solution-kicker){font-size:12px!important}}
@media(max-width:760px){.solutions{padding-top:64px!important}.solution-carousel{padding:0 35px!important}.solution-cards{display:block!important;padding-top:58px!important}.solution-card:not(.featured){display:none!important}.solution-card.featured{display:flex!important;min-height:375px!important;max-width:430px!important;margin:auto!important;padding:124px 23px 23px!important}.solution-icon{width:118px!important;height:118px!important;top:-58px!important;right:auto!important;left:50%!important;transform:translateX(-50%)!important}.solution-emblem{top:-58px!important;right:auto!important;left:50%!important;width:145px!important;height:145px!important;transform:translateX(-50%)!important}.solution-kicker{top:107px!important;left:23px!important}.solution-card h3{font-size:30px!important}.solution-card p:not(.solution-kicker){font-size:13px!important}.carousel-arrow{top:54%!important;width:39px!important;height:39px!important}}

/* Final cascade: why-process cards, matching the image-led 3 by 2 layout. */
.process{position:relative;grid-template-columns:minmax(390px,.82fr) minmax(650px,1.28fr);gap:58px;align-items:center;min-height:700px;padding:104px 6.3%;background:radial-gradient(circle at 58% 48%,rgba(168,219,184,.22),transparent 34%),#f8fbf7;overflow:hidden}
.process:before{content:"";position:absolute;z-index:0;width:760px;height:760px;right:27%;top:50%;transform:translateY(-50%);border:1px solid rgba(71,143,94,.08);border-radius:50%;box-shadow:0 0 0 110px rgba(71,143,94,.025),0 0 0 220px rgba(71,143,94,.018);pointer-events:none}
.process-copy,.process-visual{position:relative;z-index:1}
.process-copy{min-width:0}
.process .overline{margin-bottom:18px;color:#008b51;font-size:14px;font-weight:800;letter-spacing:3px}
.process h2{margin:0;color:#13291e;font-size:clamp(35px,3.6vw,64px);font-weight:500;line-height:1.1;letter-spacing:-2px}
.process h2 em{display:inline-block;color:#008e52;font-size:1em;font-style:normal;font-weight:850;line-height:1.08;letter-spacing:-3px}
.process-list{position:relative;max-height:none;margin:28px 0 0;padding:0 12px 0 0;overflow:visible;scroll-behavior:smooth;scroll-snap-type:none;scrollbar-width:auto;scrollbar-color:auto}
.process-list:before{content:"";position:absolute;z-index:0;top:30px;bottom:30px;left:31px;width:3px;border-radius:99px;background:#15935b}
.process-list li{position:relative;z-index:1;margin:0 0 10px;padding-left:67px;scroll-snap-align:start}
.process-list li:last-child{margin-bottom:0}
.process-step{position:relative;display:block;min-height:65px;padding:13px 22px 13px 18px;border:1px solid rgba(105,170,125,.14);border-left:0;border-radius:0 20px 20px 0;background:rgba(255,255,255,.68);box-shadow:0 8px 18px rgba(37,93,57,.04);color:#59685f;font-size:15px;line-height:1.35;transition:transform .3s ease,background .3s ease,color .3s ease,box-shadow .3s ease;width:100%}
.process-step:before{content:"";position:absolute;left:-67px;top:50%;display:grid;width:49px;height:49px;transform:translateY(-50%);place-items:center;border:4px solid #f7fbf6;border-radius:50%;background:#07975a;color:#fff;font-size:21px;font-weight:700;box-shadow:0 7px 18px rgba(0,111,66,.16)}
.process-list li:nth-child(1) .process-step:before{content:"✦"}.process-list li:nth-child(2) .process-step:before{content:"▤"}.process-list li:nth-child(3) .process-step:before{content:"₫"}.process-list li:nth-child(4) .process-step:before{content:"↔"}.process-list li:nth-child(5) .process-step:before{content:"⚙"}.process-list li:nth-child(6) .process-step:before,.process-list li:nth-child(7) .process-step:before{content:"✓"}
.process-step strong{display:block;margin-bottom:3px;color:#00874e;font-size:16px}
.process-step.selected{background:linear-gradient(90deg,#008e51,#07995b);color:#fff;box-shadow:0 14px 25px rgba(0,119,70,.2);transform:translateX(7px)}
.process-step.selected strong{color:#fff}
.process-step.selected:before{background:#008e51}
.process-visual{min-width:0}
.process-image-wrap{padding:0 73px 0 0}
.process-main{height:548px;border:1px solid rgba(67,133,84,.22);border-radius:0 78px 24px 24px;background:linear-gradient(135deg,#eef7ed,#cfe3c5);box-shadow:0 20px 45px rgba(24,78,45,.1)}
.process-main img{position:absolute;z-index:2;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;border-radius:inherit;filter:saturate(.96);transition:opacity .35s ease}
.process-main:before,.process-main:after{opacity:.6}
.process-insets{right:12px;top:72px;gap:27px}
.process-insets .image-placeholder{width:178px;height:155px;border:7px solid #f7fbf5;border-radius:22px;background:linear-gradient(135deg,#eef7ed,#cfe3c5);box-shadow:0 14px 30px rgba(25,79,48,.15)}
.process-insets .image-placeholder img{position:absolute;z-index:2;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit;filter:saturate(.96);transition:opacity .35s ease}
.process-spark{top:-24px;left:-19px;width:69px;height:69px;border:7px solid #f7fbf5;background:#008e51;box-shadow:0 15px 30px rgba(7,43,29,.16)}
.process-meter{right:0;top:12px;bottom:12px;font-size:15px;color:#82937e}
.process-meter>div{width:4px;background:#dce7d9}.process-meter>div>span{background:#008e51}
.process-controls{margin-top:25px;font-size:13px}.process-nav-buttons{display:flex;align-items:center;justify-content:center;gap:12px}.stage-pill{padding:9px 26px;background:#d5e8c6}.circle-button{display:grid;place-items:center;width:50px;height:50px;min-width:50px;flex:0 0 50px;padding:0;line-height:1;font-size:28px;background:#008e51;color:#fff;border:0;box-shadow:0 10px 22px rgba(0,119,70,.18)}.circle-button--prev{background:#fff;color:#008e51;border:1px solid #83c39a;box-shadow:none}
@media(max-width:1200px){.process{grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr);gap:30px;min-height:620px;padding-top:78px;padding-bottom:78px}.process-main{height:470px}.process-insets .image-placeholder{width:140px;height:128px}.process-list{max-height:none;overflow:visible}.process-step{font-size:13px}.process-step strong{font-size:14px}}
@media(max-width:760px){.process{grid-template-columns:1fr;gap:34px;min-height:0;padding:62px 6% 70px}.process:before{right:-55%;width:620px;height:620px}.process h2{font-size:39px;line-height:1.12}.process h2 em{line-height:1.08}.process-list{max-height:none;overflow:visible;margin-top:24px}.process-list:before{left:26px}.process-list li{padding-left:57px}.process-step{min-height:58px;padding:11px 14px;font-size:12px;border-radius:0 16px 16px 0}.process-step:before{left:-57px;width:43px;height:43px;font-size:18px}.process-step strong{font-size:13px}.process-image-wrap{padding:0 48px 0 0}.process-main{height:360px;border-radius:0 45px 18px 18px}.process-insets{right:8px;top:45px;gap:16px}.process-insets .image-placeholder{width:108px;height:100px;border-width:5px;border-radius:16px}.process-spark{width:50px;height:50px;left:-13px;top:-16px;font-size:23px}.process-meter{font-size:11px}.process-controls{font-size:10px}.circle-button{width:40px;height:40px;font-size:22px}}
.process-nav-buttons .circle-button--prev{background:#008e51;color:#fff;border:0;box-shadow:0 10px 22px rgba(0,119,70,.18)}
.hero-banner{display:block;min-height:680px;border-radius:28px;background:linear-gradient(115deg,#f7fbf7 0%,#edf7ef 44%,#00633f 44%,#004e34 100%);text-align:left;isolation:isolate}
.hero-banner:before{content:"";position:absolute;z-index:0;top:-36%;right:-7%;width:68%;height:92%;border-radius:0 0 0 48%;background:linear-gradient(135deg,var(--green) 0%,var(--green-deep) 78%);transform:rotate(-7deg);box-shadow:inset 0 -30px 80px rgba(219,245,219,.12);pointer-events:none}
.hero-banner:after{content:"";position:absolute;z-index:1;left:-9%;bottom:-47%;width:70%;height:60%;border:1px solid rgba(94,177,117,.2);border-radius:50%;box-shadow:0 0 0 34px rgba(94,177,117,.07),0 0 0 78px rgba(94,177,117,.045);transform:rotate(-9deg);pointer-events:none}
.hero-background{z-index:0;background:radial-gradient(circle at 14% 88%,rgba(161,220,171,.28),transparent 29%),linear-gradient(115deg,#f9fcf9 0%,#edf7ef 55%,rgba(225,244,227,.18) 100%);color:#678778}
@media(max-width:760px){.hero-banner{background:linear-gradient(180deg,#f9fcf9 0 48%,#e9f6ec 48%,#cfe8d4 100%)}.hero-background{background:radial-gradient(circle at 50% 86%,rgba(161,220,171,.34),transparent 35%),linear-gradient(180deg,#f9fcf9,#e9f6ec)}.hero-banner:before{top:-18%;right:-30%;width:120%;height:48%;border-radius:0 0 0 48%;transform:rotate(-5deg);opacity:.88}.hero-banner:after{left:-34%;bottom:-18%;width:140%;height:35%;border-width:1px}}
.hero-background:before,.hero-background:after{display:none}
.hero-media{position:absolute;z-index:3;top:9%;right:4.8%;width:55.5%;height:77%;padding:10px;border-radius:40px;background:rgba(190,231,201,.22);box-shadow:0 22px 55px rgba(0,57,35,.18);overflow:hidden}
.hero-video{display:block;width:100%;height:100%;object-fit:cover;border-radius:29px;background:#073c29;box-shadow:0 10px 30px rgba(0,0,0,.16)}
.hero-video-label{position:absolute;top:24px;right:28px;padding:9px 16px;border:1px solid rgba(235,255,239,.22);border-radius:999px;background:rgba(0,55,35,.48);color:#e7f5e9;font-size:8px;font-weight:800;letter-spacing:1.5px}
.hero-content{position:absolute;z-index:4;top:0;bottom:0;left:0;width:43%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:72px 4.5%;text-align:left;color:#14251d}
.hero-badge{color:#5a7065;background:#fff8;border-color:#acd2ba}.hero-badge>span{background:#008c50;box-shadow:0 0 0 5px rgba(0,140,80,.12)}
.hero h1{max-width:650px;color:#13251e;font-size:clamp(44px,5vw,82px);line-height:1.16}.hero h1 span{margin-top:9px;color:#008b50;-webkit-text-stroke:0;text-shadow:none}
.hero-description{max-width:560px;color:#63766c;font-size:15px;line-height:1.7}.hero-actions{margin-top:28px}.hero-hotline{background:#008d54;color:#fff}.hero-hotline:hover{background:#006e42;color:#fff}.hero-link{color:#00804b;border-color:#8bc9a5}
.hero-status{z-index:5;left:auto;right:4.5%;bottom:25px;width:45%;padding:14px 20px;border:1px solid rgba(0,130,77,.12);border-radius:22px;background:rgba(255,255,255,.74);color:#1b4631;box-shadow:0 8px 25px rgba(35,93,56,.08)}.hero-status small{color:#6c8a79}.hero-status strong{color:#17432e}
@media(max-width:760px){.hero-status{left:7%;right:7%;width:auto;bottom:23px;padding:10px 12px}}
.hero-status{display:grid;grid-template-columns:18px repeat(3,minmax(0,1fr));align-items:center;gap:0}.hero-status__dot{justify-self:center}.hero-status p{width:auto;margin:0;padding:0 14px;text-align:center;border-left:0}.hero-status p+ p{border-left:1px solid rgba(0,118,73,.16)}
.hero-video-label{display:none}
.hero-status{left:50%;right:auto;bottom:25px;transform:translateX(-50%);width:45%}
@media(max-width:760px){.hero-status{left:50%;right:auto;width:86%;transform:translateX(-50%);bottom:23px}}
.hero-status{display:none!important}
.why-certificates{overflow:hidden;background:#e8eee8}
.why-certificates .why-certificate{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;visibility:hidden;transition:opacity .55s ease,visibility .55s ease}
.why-certificates .why-certificate.is-active{opacity:1;visibility:visible}
.why-certificates:after{z-index:2;inset:70% 0 0;background:linear-gradient(180deg,transparent,rgba(5,42,27,.35))}
.why-certificate-arrow{position:absolute;z-index:4;top:50%;display:grid;width:42px;height:42px;transform:translateY(-50%);place-items:center;border:1px solid rgba(255,255,255,.7);border-radius:50%;background:rgba(0,105,61,.8);color:#fff;font-size:22px;line-height:1;box-shadow:0 8px 20px rgba(0,54,32,.18)}
.why-certificate-arrow:hover{background:#008c4f}.why-certificate-arrow--prev{left:16px}.why-certificate-arrow--next{right:16px}.why-certificate-count{position:absolute;z-index:4;right:18px;bottom:15px;color:#fff;font-size:10px;font-weight:800;letter-spacing:1px;text-shadow:0 2px 5px rgba(0,0,0,.5)}
@media(max-width:620px){.why-certificate-arrow{width:34px;height:34px;font-size:18px}.why-certificate-arrow--prev{left:10px}.why-certificate-arrow--next{right:10px}.why-certificate-count{right:12px;bottom:10px;font-size:8px}}
.hero-glow{z-index:1;right:6%;top:9%;width:41%;opacity:.55}.hero-nodes{z-index:4}.hero-corner{z-index:5;left:auto;right:32px;top:25px;bottom:auto;color:#d8f0dc}.hero-scroll{z-index:5;left:4.5%;bottom:25px;border-color:#008c5045;color:#008c50}
@media(max-width:760px){.hero-banner{min-height:900px;border-radius:19px;background:linear-gradient(180deg,#f7fbf7 0 44%,#00633f 44%,#004e34 100%)}.hero-background{background:linear-gradient(180deg,#f7fbf7 0 44%,#00633f 44%,#004e34 100%)}.hero-content{position:relative;top:auto;bottom:auto;width:100%;min-height:410px;padding:54px 7% 25px}.hero h1{font-size:42px;line-height:1.18}.hero h1 span{margin-top:10px}.hero-description{font-size:12px}.hero-media{position:relative;top:auto;right:auto;width:92%;height:340px;margin:12px auto 0;padding:7px;border-radius:26px}.hero-video{border-radius:20px}.hero-video-label{top:16px;right:18px;font-size:6px}.hero-status{left:7%;right:7%;bottom:23px;padding:10px 12px}.hero-status p{padding-left:9px}.hero-status small{font-size:5px}.hero-status strong{font-size:8px}.hero-scroll{display:none}.hero-corner{top:17px;right:18px;font-size:6px}}
.partnership{position:relative;isolation:isolate;padding:104px 6.3% 112px;background:radial-gradient(circle at 64% 24%,rgba(174,221,189,.2),transparent 34%),#f8fbf7;overflow:hidden}
.partnership:before{content:"";position:absolute;z-index:-1;right:22%;top:-180px;width:760px;height:760px;border:1px solid rgba(56,139,89,.08);border-radius:50%;box-shadow:0 0 0 100px rgba(56,139,89,.025),0 0 0 210px rgba(56,139,89,.018);pointer-events:none}
.partnership-hero{display:grid;grid-template-columns:minmax(360px,.8fr) minmax(560px,1.35fr);gap:55px;align-items:center;max-width:1680px;margin:0 auto 62px}
.partnership-copy{padding-left:2px}.partnership .overline,.partnership-label{margin:0 0 15px;color:#008451;font-size:14px;font-weight:800;letter-spacing:2.5px}.partnership-copy h2{margin:0;color:#15241d;font-size:clamp(34px,4vw,62px);font-weight:500;line-height:1.08;letter-spacing:-2px}.partnership-copy h2 em{color:#008b50;font-style:normal;font-weight:850}.partnership-copy>p:not(.overline){max-width:550px;margin:26px 0 30px;color:#5f6c65;font-size:18px;line-height:1.55}.partnership-benefits{display:flex;gap:34px;color:#53635a;font-size:16px;line-height:1.3}.partnership-benefits span{display:flex;align-items:center;gap:11px}.partnership-benefits i{display:grid;width:52px;height:52px;place-items:center;border-radius:50%;background:#e5f4e8;color:#008b50;font-size:27px;font-style:normal}
.partnership-hero-image{height:365px;min-height:0;border-radius:0 180px 24px 24px;background:linear-gradient(135deg,#e8f3e6,#c9dfc7);box-shadow:0 20px 45px rgba(24,78,45,.1)}
.partnership-hero-image--filled img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;border-radius:inherit;z-index:2}
.partnership-hero-image--filled:before,.partnership-hero-image--filled:after{display:none}
.partnership-hero-image:before,.partnership-hero-image:after{opacity:.45}.partnership-logos{max-width:1680px;margin:0 auto 57px;padding:24px 30px 20px;border-radius:25px;background:rgba(255,255,255,.67);box-shadow:0 16px 35px rgba(35,91,56,.08)}.partnership-logo-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:14px}.partner-card{min-width:0}.partnership-logo-grid .image-placeholder{height:84px;min-height:0;border-radius:13px;background:#fff;box-shadow:0 5px 18px rgba(33,82,51,.04)}.partnership-logo-grid .image-placeholder img{position:absolute;z-index:2;inset:0;width:100%;height:100%;padding:10px 13px;object-fit:contain;background:#fff}.partnership-logo-grid .image-placeholder small{font-size:8px;color:#79947f;letter-spacing:1px}.partner-card p{margin:10px 2px 0;color:#456458;font-size:11px;font-weight:650;line-height:1.35;text-align:center}
.client-logos{max-width:1680px;margin:0 auto 57px;padding:24px 30px 20px;border-radius:25px;background:rgba(255,255,255,.67);box-shadow:0 16px 35px rgba(35,91,56,.08)}.client-logo-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px 14px}.client-card{min-width:0;text-align:center}.client-card .image-placeholder{height:112px;min-height:0;border-radius:13px;background:#fff;box-shadow:0 5px 18px rgba(33,82,51,.04)}.client-card .image-placeholder img{position:absolute;z-index:2;inset:0;width:100%;height:100%;padding:12px 16px;object-fit:contain;background:#fff}.client-card p{margin:10px 4px 0;color:#456458;font-size:11px;font-weight:650;line-height:1.4}.client-card p strong{color:#1a4c38;font-weight:800}
.partnership-process{max-width:1680px;margin:0 auto}.partnership-timeline{position:relative;display:grid;grid-template-columns:repeat(6,1fr);gap:28px;padding-top:34px}.partnership-timeline:before{content:"";position:absolute;top:59px;right:4%;left:4%;height:2px;background:linear-gradient(90deg,#a7c7f5,#67c9ce,#7fca8e)}.partnership-timeline article{position:relative;text-align:center}.partnership-timeline article i{position:relative;z-index:1;display:grid;width:72px;height:72px;margin:0 auto 6px;place-items:center;border:6px solid #f8fbf7;border-radius:50%;background:#e4f5e8;color:#15905d;font-size:28px;font-style:normal;box-shadow:0 0 0 2px #a6dfb9}.partnership-timeline article b{position:absolute;z-index:2;top:65px;left:50%;display:grid;width:30px;height:30px;transform:translateX(-50%);place-items:center;border-radius:50%;background:#4fbd7b;color:#fff;font-size:11px}.partnership-timeline article h3{margin:24px 0 9px;color:#1a3024;font-size:16px}.partnership-timeline article p{margin:0 auto;max-width:180px;color:#69786f;font-size:13px;line-height:1.45}
@media(max-width:1100px){.partnership{padding-top:80px}.partnership-hero{grid-template-columns:1fr 1.25fr;gap:30px}.partnership-copy>p:not(.overline){font-size:15px}.partnership-benefits{gap:18px;font-size:13px}.partnership-benefits i{width:43px;height:43px;font-size:22px}.partnership-hero-image{height:310px}.partnership-logo-grid{grid-template-columns:repeat(4,1fr)}.client-logo-grid{grid-template-columns:repeat(3,1fr)}.partnership-timeline{gap:12px}.partnership-timeline article h3{font-size:14px}.partnership-timeline article p{font-size:11px}}
@media(max-width:760px){.partnership{padding:70px 6% 80px}.partnership-hero{grid-template-columns:1fr;gap:28px;margin-bottom:38px}.partnership-copy h2{font-size:39px}.partnership-copy>p:not(.overline){font-size:13px;margin:20px 0 25px}.partnership-benefits{display:grid;grid-template-columns:1fr;gap:12px;font-size:13px}.partnership-benefits i{width:42px;height:42px}.partnership-hero-image{height:260px;border-radius:0 70px 18px 18px}.partnership-logos,.client-logos{padding:18px 15px 15px;margin-bottom:40px}.partnership-logo-grid{grid-template-columns:repeat(2,1fr);gap:18px 9px}.partnership-logo-grid .image-placeholder{height:72px}.partner-card p{font-size:10px;margin-top:8px}.client-logo-grid{grid-template-columns:repeat(2,1fr);gap:18px 9px}.client-card .image-placeholder{height:78px}.client-card p{font-size:10px;margin-top:8px}.partnership-timeline{grid-template-columns:repeat(2,1fr);gap:26px 12px;padding-top:12px}.partnership-timeline:before{display:none}.partnership-timeline article i{width:58px;height:58px;font-size:22px}.partnership-timeline article b{top:50px}.partnership-timeline article h3{margin-top:21px;font-size:14px}.partnership-timeline article p{font-size:11px}}
.process-nav-buttons .circle-button{position:relative;font-size:0}
.process-nav-buttons .circle-button:before{content:"";position:absolute;top:50%;left:50%;width:13px;height:13px;transform:translate(-38%,-50%) rotate(45deg);border-top:3px solid currentColor;border-right:3px solid currentColor}
.process-nav-buttons .circle-button:after{content:"";position:absolute;top:50%;left:50%;width:24px;height:3px;transform:translate(-50%,-50%);border-radius:99px;background:currentColor}
.process-nav-buttons .circle-button--prev:before{transform:translate(-62%,-50%) rotate(-135deg)}
.why{padding-top:88px;padding-bottom:102px;background:radial-gradient(circle at 50% 44%,rgba(129,196,158,.16),transparent 38%),#f8fbf7}
.why-layout{display:grid;grid-template-columns:minmax(390px,.94fr) minmax(610px,1.3fr);gap:28px;align-items:stretch;max-width:1680px;margin:0 auto}
.why-showcase{position:relative;display:block;min-height:548px;overflow:hidden;border-radius:0 170px 24px 24px;background:#edf3ea;box-shadow:0 18px 45px rgba(21,61,43,.08)}
.why-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:none;gap:26px;border:0;border-radius:0;overflow:visible;background:transparent}
.why-card{position:relative;display:block;min-width:0;min-height:265px;padding:0!important;overflow:hidden;border:0;border-radius:23px;background:#fff;box-shadow:0 18px 38px rgba(19,67,44,.12);isolation:isolate}
.why-card:hover{transform:translateY(-7px);box-shadow:0 28px 52px rgba(19,67,44,.18)!important}
.why-photo-slot{position:absolute;inset:0 0 auto;width:100%;height:70%;min-height:0;background:#dceadd;overflow:hidden}
.why-photo-slot:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(7,56,37,.12))}
.why-photo-slot img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .5s ease}
.why-card:hover .why-photo-slot img{transform:scale(1.05)}
.why-card-copy{position:absolute;z-index:2;right:0;bottom:0;left:0;display:block;min-height:111px;padding:27px 13px 14px 94px;background:linear-gradient(138deg,#fff 0%,#fbfffc 70%,#d9f0e1 140%);border-radius:56% 46% 0 0 / 37px 37px 0 0}
.why-number{display:none}
.why-icon{position:absolute;top:-25px;left:15px;display:grid;width:61px;height:61px;margin:0;border:5px solid #f5fbf6;border-radius:50%;place-items:center;background:radial-gradient(circle at 30% 25%,#079f63,#00613e 68%);box-shadow:0 11px 22px rgba(0,100,62,.2);color:#fff;font-size:21px;font-weight:800;line-height:1;letter-spacing:0}
.why-card h3{margin:0 0 5px;color:#00683f;font-size:clamp(17px,1.35vw,23px);font-weight:800;line-height:1.08;letter-spacing:-.8px}
.why-card h3:after{content:"";display:block;width:25px;height:2px;margin-top:6px;background:#059458}
.why-card p{margin:0;color:#56635e;font-size:clamp(10px,.78vw,13px);line-height:1.32}
@media(max-width:1200px){.why-layout{grid-template-columns:1fr}.why-showcase{min-height:500px}.why-grid{gap:20px}.why-card{min-height:405px;border-radius:26px}.why-card-copy{min-height:154px;padding:34px 18px 20px 132px;border-radius:56% 46% 0 0 / 48px 48px 0 0}.why-icon{top:-33px;left:21px;width:78px;height:78px;border-width:6px;font-size:27px}.why-card h3{font-size:25px}.why-card p{font-size:13px}}
@media(max-width:880px){.why-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.why-card{min-height:420px}}
@media(max-width:620px){.why{padding-top:58px;padding-bottom:65px}.why-heading{margin-bottom:28px}.why-heading h2{font-size:30px;letter-spacing:-1px}.why-grid{grid-template-columns:1fr;gap:18px;max-width:450px;margin:auto}.why-card{min-height:365px;border-radius:23px}.why-photo-slot{height:69%}.why-card-copy{min-height:134px;padding:30px 20px 18px 112px;border-radius:56% 46% 0 0 / 42px 42px 0 0}.why-icon{top:-28px;left:16px;width:67px;height:67px;border-width:5px;font-size:23px}.why-card h3{margin-bottom:6px;font-size:24px;letter-spacing:-1px}.why-card h3:after{width:29px;margin-top:7px}.why-card p{font-size:13px;line-height:1.34}}
