/* TOP composition: philosophy, specific know-how and a clear next step. */
html body.renewed-home .top-hero{justify-content:center;min-height:100svh;padding:150px 0 120px;background:#103923}
html body.renewed-home .top-hero__inner{width:100%;max-width:1440px;padding:0 72px;margin:auto;justify-content:center;text-align:center}
html body.renewed-home .top-hero .top-hero__copy{max-width:1100px;text-align:center;margin:auto}
html body.renewed-home .top-hero .top-hero__title{font-size:clamp(48px,5.7vw,82px)!important;font-weight:700;letter-spacing:.075em!important;line-height:1.65!important;text-shadow:0 4px 32px #0b281d25;margin:0}
html body.renewed-home .top-hero__title-line{display:block;animation:philosophy-enter .9s cubic-bezier(.2,.7,.2,1) both}
html body.renewed-home .top-hero__title-line--accent{animation-delay:.16s;color:#ecd28a!important}
html body.renewed-home .top-hero__city-scene{opacity:1}.renewed-home .city-scene__overlay{background:linear-gradient(90deg,#0b2e25b8,#0b2e257a 50%,#0b2e25a0)!important}.renewed-home .city-scene__image--real{animation:philosophy-city 6s ease-out both!important}
.hero-value-mark{position:absolute;width:350px;height:350px;right:6%;top:calc(50% - 175px);z-index:0;opacity:.12;transform:rotate(-8deg);pointer-events:none}.hero-value-mark i{position:absolute;background:#ecd28a;top:50%;left:0;width:100%;height:1px}.hero-value-mark i+i{transform:rotate(90deg)}
.hero-frame{position:absolute;inset:122px 6% 58px;border:1px solid #f0dfac35;pointer-events:none;z-index:0;animation:philosophy-enter 1.2s ease both}.hero-frame:before,.hero-frame:after{content:'';position:absolute;width:34px;height:34px;border-color:#dfc474;border-style:solid}.hero-frame:before{top:-1px;left:-1px;border-width:2px 0 0 2px}.hero-frame:after{right:-1px;bottom:-1px;border-width:0 2px 2px 0}
@keyframes philosophy-enter{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes philosophy-city{from{transform:scale(1.045)}to{transform:scale(1)}}
.renewed-home .visual-section{padding-block:96px}.renewed-home .visual-section>.wrap>h2{text-align:center;margin-bottom:48px;font-size:clamp(28px,2.8vw,40px);line-height:1.65;letter-spacing:.03em}
.renewed-home .home-concerns{max-width:1080px;margin:0 auto;gap:32px}.renewed-home .concern-panel{padding:36px;background:#fff;border-top-width:3px}.renewed-home .concern-panel h3{font-size:24px}.renewed-home .concern-scene{margin-top:24px}.renewed-home .pictogram-person{width:144px;height:144px;margin:24px auto 8px}.renewed-home .concern-bubble{font-size:16px}.renewed-home .concern-panel li{font-size:16px}.renewed-home .concern-answer{margin-top:36px}
.renewed-home #home-blueprint{background:#f7f7ef}.renewed-home .home-section-actions{justify-content:center;margin-top:40px;gap:0}.renewed-home .home-section-actions .button{min-width:320px;justify-content:space-between;border-radius:3px;font-size:16px;min-height:62px;padding:18px 28px}.renewed-home .button--outline{border:1px solid #1f5e3b;background:transparent!important;color:#1f5e3b!important}
.renewed-home .home-support-grid{gap:24px}.renewed-home .home-support-grid>a{border-top:0;border-bottom:3px solid #1f5e3b;padding:32px;box-shadow:0 8px 24px #173d2b05}.renewed-home .home-support-number{font-size:48px;color:#8ea783}.renewed-home .home-support-grid h3{font-size:24px;margin:22px 0 14px}.renewed-home .home-support-grid p{font-size:15px;color:#3e5547}
.renewed-home .visual-prices article:nth-child(1),.renewed-home .visual-prices article:nth-child(3){background:#fff;box-shadow:0 4px 20px #173d2b08;border:1px solid #d8e1d4}.renewed-home .visual-prices article:nth-child(2){box-shadow:0 8px 26px #173d2b12}.renewed-home .visual-prices .visual-plan-target{font-size:14px;line-height:1.8}.renewed-home .visual-prices li{font-size:15px}.renewed-home .visual-prices .visual-tax{font-size:12px}.renewed-home .visual-prices .button{font-size:14px;min-height:52px}.renewed-home .visual-prices strong>span{white-space:nowrap}
html body.renewed-home .home-process{gap:0;counter-reset:process;position:relative;margin:0;padding:0;background:#f4f6f2;border:1px solid #d7e0d3}.renewed-home .home-process li{padding:36px 26px!important;position:relative;border-top:0!important;background:transparent!important;border-right:1px solid #d7e0d3!important;color:#173d2b!important}.renewed-home .home-process li:last-child{border-right:0!important}.renewed-home .home-process li>span{font:700 48px/1.2 Arial!important;color:#1f5e3b!important;margin-bottom:24px}.renewed-home .home-process li h3{font-size:21px;color:#173d2b!important;margin:0 0 16px!important}.renewed-home .home-process li p{font-size:15px!important;line-height:1.8;color:#405748!important}.renewed-home .home-process li:not(:last-child):after{content:'→';position:absolute;right:-15px;top:42px;background:#1f5e3b;color:white;display:grid;place-items:center;font:400 18px Arial;width:30px;height:30px;border-radius:50%;z-index:1}
.renewed-home .home-proposal-section{background:#e9eee4}.renewed-home .home-proposal-section>.wrap>h2{font-size:20px;font-weight:500;margin-bottom:44px}.renewed-home .proposal-story{max-width:1000px;margin:0 auto;grid-template-columns:260px 1fr;gap:70px;align-items:center}.proposal-portrait{padding:32px 10px 20px;background:#f7f8f3;text-align:center;position:relative}.renewed-home .proposal-portrait img{width:240px;max-width:100%;height:auto;display:block;margin:auto}.proposal-portrait p{font-size:14px;margin:22px 0 0;color:#405748}.renewed-home .home-representative__quote{font-size:clamp(32px,3.3vw,46px);line-height:1.55!important;letter-spacing:.02em;margin-bottom:24px}.home-representative__quote em{font-style:normal;box-shadow:inset 0 -.18em #d4b85c70}.proposal-lead{font-size:18px;line-height:2;color:#2b4735}.proposal-method{display:flex;align-items:center;gap:12px;margin:30px 0 20px}.proposal-method>div{flex:1;padding:14px 10px;background:#fff;text-align:center}.proposal-method span{display:block;font:700 12px Arial;color:#9c7e30;margin-bottom:10px}.proposal-method b{font-size:14px}.proposal-method i{font-style:normal;color:#71966e}.proposal-body .text-link{font-size:15px}
html body.renewed-home .home-closing{text-align:center;background:#143e29;color:#fff;padding-block:96px}.renewed-home .home-closing h2{color:#fff!important}.renewed-home .home-closing p{font-size:17px;color:#e1ebdb;margin:0 0 32px}.renewed-home .home-closing .brief-actions{justify-content:center;align-items:center;flex-direction:column;gap:24px}.renewed-home .home-closing .button{background:#e1c675;color:#163824;justify-content:center;gap:40px;padding:20px 34px;min-height:64px;min-width:340px;font-size:17px;border-radius:4px}.home-consult-link{color:#edf3e8;text-underline-offset:6px;font-size:15px}
@media(max-width:1200px){.renewed-home .proposal-story{gap:44px}.renewed-home .home-support-grid h3{font-size:21px}}
@media(max-width:900px){.renewed-home .home-process{grid-template-columns:1fr 1fr!important}.renewed-home .home-process li:nth-child(2){border-right:0!important}.renewed-home .home-process li:nth-child(-n+2){border-bottom:1px solid #d7e0d3}.renewed-home .home-process li:nth-child(2):after{display:none}.renewed-home .proposal-story{grid-template-columns:200px 1fr;gap:32px}.proposal-method{gap:6px}.proposal-method b{font-size:12px}.renewed-home .home-support-grid{grid-template-columns:1fr}.renewed-home .home-support-grid>a{display:grid;grid-template-columns:60px 1fr;gap:12px 28px}.renewed-home .home-support-number{grid-row:1/3}.renewed-home .home-support-grid h3{margin:0}.renewed-home .home-support-grid p{grid-column:2}.renewed-home .home-support-grid a>span:last-child{position:absolute;bottom:20px;right:24px}}
@media(max-width:767px){html body.renewed-home .top-hero{padding:100px 0 60px;min-height:92svh}html body.renewed-home .top-hero__inner{padding-inline:20px}html body.renewed-home .top-hero .top-hero__title{font-size:clamp(30px,7.7vw,50px)!important;letter-spacing:.02em!important;line-height:1.7!important}.hero-frame{inset:96px 18px 30px}.hero-value-mark{width:180px;height:180px;right:-30px;top:53%;opacity:.1}.renewed-home .visual-section{padding-block:64px}.renewed-home .visual-section>.wrap>h2{font-size:27px;margin-bottom:32px;text-align:left}.renewed-home .home-concerns{gap:24px}.renewed-home .concern-panel{padding:28px 22px}.renewed-home .concern-panel h3{font-size:21px}.renewed-home .pictogram-person{width:128px;height:128px;margin-block:20px 0}.renewed-home .concern-answer{font-size:14px;text-align:center}.renewed-home .concern-answer strong{font-size:19px}.renewed-home .home-section-actions{margin-top:28px}.renewed-home .home-section-actions .button{min-width:0;width:100%;font-size:14px;min-height:56px}.renewed-home .home-support-grid>a{padding:26px 22px;grid-template-columns:44px 1fr;gap:10px 18px}.renewed-home .home-support-grid h3{font-size:19px}.renewed-home .home-support-grid p{font-size:14px;padding-right:20px}.renewed-home .home-support-number{font-size:36px}.renewed-home .home-process{grid-template-columns:1fr!important}.renewed-home .home-process li{padding:26px 24px 26px 84px!important;border-right:0!important;border-bottom:1px solid #d7e0d3!important}.renewed-home .home-process li>span{position:absolute;left:20px;top:27px;font-size:36px!important}.renewed-home .home-process li h3{font-size:20px;margin-bottom:8px!important}.renewed-home .home-process li:not(:last-child):after{display:grid;right:20px;top:auto;bottom:-15px;transform:rotate(90deg)}.renewed-home .home-process li:last-child{border-bottom:0!important}.renewed-home .home-process li p{font-size:14px!important}.renewed-home .home-proposal-section>.wrap>h2{text-align:center;font-size:18px}.renewed-home .proposal-story{grid-template-columns:1fr;gap:28px}.renewed-home .proposal-portrait{max-width:260px;margin:auto;padding:24px 20px 18px;order:2}.renewed-home .proposal-portrait img{max-width:180px}.proposal-body{text-align:center}.renewed-home .home-representative__quote{font-size:31px;text-align:center}.proposal-lead{font-size:16px}.proposal-method{margin-block:26px 20px}.proposal-method>div{padding:12px 6px}.proposal-method b{font-size:12px}.renewed-home .home-closing{padding-block:68px}.renewed-home .home-closing h2{text-align:center!important}.renewed-home .home-closing p{font-size:15px}.renewed-home .home-closing .button{width:100%;min-width:0;font-size:15px;padding:18px 20px;gap:18px}.home-consult-link{font-size:14px}}
@media(prefers-reduced-motion:reduce){html body.renewed-home .top-hero__title-line,.hero-frame,html body.renewed-home .city-scene__image--real{animation:none!important;transform:none!important}}
html body.renewed-home .city-scene__image--sketch,html body.renewed-home .city-scene__light{display:none!important}html body.renewed-home .city-scene__image--real{mask-image:none!important;-webkit-mask-image:none!important;opacity:1!important}
/* Keep the process content in one readable column inside each step. */
html body.renewed-home .home-process li{display:block!important}
html body.renewed-home .home-process li h3{max-width:none;width:auto;white-space:normal}
html body.renewed-home .visual-prices article strong{display:flex!important;align-items:baseline;justify-content:flex-start;gap:7px;flex-wrap:nowrap}
html body.renewed-home .visual-prices article strong>span{display:inline!important;margin:0!important;white-space:nowrap!important;flex:0 0 auto}
/* Supplied transparent PNGs: align visible artwork, without altering the originals. */
.renewed-home .concern-art{position:relative;width:min(100%,300px);aspect-ratio:15/13;overflow:hidden;margin:20px auto 8px;flex-shrink:0}
.renewed-home .concern-art img{position:absolute;left:50%;width:124.8%;max-width:none;height:auto;top:-26.2%;transform:translateX(-51.3%);animation:none!important}
.renewed-home .concern-art--improve img{width:116.8%;top:-19.2%;transform:translateX(-50.6%)}
@media(max-width:767px){.renewed-home .concern-art{width:min(100%,240px);margin:20px auto 8px}}
/* Clear changes of scene within the same green palette. */
html body.renewed-home #home-concerns{background:#e5edde}
html body.renewed-home #home-blueprint{background:#174a32}
html body.renewed-home #home-blueprint>.wrap>h2{color:#fff}
html body.renewed-home #home-blueprint .home-section-actions .button{background:var(--brand-cta-gold,#8b6922);color:#fff}
html body.renewed-home #home-blueprint .blueprint-deck__counter,html body.renewed-home #home-blueprint .blueprint-deck__swipe{color:#e0e9d9}
html body.renewed-home #home-blueprint .blueprint-deck__toolbar .blueprint-deck__dots button[aria-current=true]>span{background:#e1c675}
html body.renewed-home #home-blueprint .blueprint-deck__arrow{background:#f9fbf5;color:#1f5e3b}
html body.renewed-home .home-support-section{background:#fff}
html body.renewed-home .home-support-section .home-support-grid>a{background:#eef3e9;box-shadow:none}
html body.renewed-home .home-models-section{background:#d5e3cd}
html body.renewed-home .home-pricing-section{background:#f6f5ed}
html body.renewed-home .home-process-section{background:#e5edde}
html body.renewed-home .home-faq-section{background:#fff}
html body.renewed-home .home-proposal-section{background:#214e36;color:white;padding-block:112px}
html body.renewed-home .home-proposal-section>.wrap>h2{color:#dfebd5;letter-spacing:.12em}
html body.renewed-home .home-proposal-section .proposal-story{max-width:1200px;grid-template-columns:300px 1fr;gap:88px}
html body.renewed-home .home-proposal-section .home-representative__quote{color:#fff;font-size:clamp(40px,4.4vw,62px);line-height:1.45!important;margin-bottom:32px;letter-spacing:.02em}
html body.renewed-home .home-proposal-section .home-representative__quote em{color:#f0d88f;box-shadow:none}
html body.renewed-home .home-proposal-section .proposal-lead{color:#e0ead8;font-size:20px}
html body.renewed-home .home-proposal-section .proposal-body>.text-link{color:#f1e3b8}
html body.renewed-home .home-proposal-section .proposal-method>div{background:#ffffff12;color:#fff;border:1px solid #ffffff35;padding:22px 10px}
html body.renewed-home .home-proposal-section .proposal-method span{color:#e1c675}
html body.renewed-home .home-proposal-section .proposal-method i{color:#b6cbaa}
html body.renewed-home .home-closing{background:#f4f4e8;color:#173d2b}
html body.renewed-home .home-closing h2{color:#173d2b!important}
html body.renewed-home .home-closing p,html body.renewed-home .home-closing .home-consult-link{color:#405748}
html body.renewed-home .home-closing .button{background:#1f5e3b;color:#fff}
/* Align the people, rather than the outer symbols, in the supplied artwork. */
html body.renewed-home .concern-art{aspect-ratio:1;margin-block:20px 8px}
html body.renewed-home .concern-art--new img{width:103.333%;top:7%;transform:translateX(-51.3%)}
html body.renewed-home .concern-art--improve img{width:133.333%;top:-19%;transform:translateX(-50.6%)}
/* A visual process, using the same paper/number language as the blueprint. */
html body.renewed-home .home-process{background:transparent;border:0;gap:22px;grid-template-columns:repeat(4,minmax(0,1fr))!important}
html body.renewed-home .home-process li{padding:28px!important;background:#fff!important;border:0!important;border-top:3px solid #1f5e3b!important;box-shadow:0 6px 20px #1f5e3b05}
html body.renewed-home .home-process li:after{display:none!important}
.home-process-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}
.home-process-top>span{font:500 42px/1 Georgia,serif;color:#9e8132}
html body.renewed-home .home-process-icon{width:44px;height:44px;color:#1f5e3b}
html body.renewed-home .home-process h3{font-size:20px!important;line-height:1.6}
html body.renewed-home .home-process p{font-size:14px!important}
/* Original sketch-to-city reveal, with a deliberate hierarchy for the philosophy. */
html body.renewed-home .city-scene__image--sketch{display:block!important;opacity:1!important;animation:none!important}
html body.renewed-home .city-scene__image--real{mask-image:linear-gradient(90deg,#000 0%,#000 42%,rgba(0,0,0,.96) 46%,rgba(0,0,0,.72) 51%,rgba(0,0,0,.32) 57%,transparent 63%,transparent 100%)!important;-webkit-mask-image:linear-gradient(90deg,#000 0%,#000 42%,rgba(0,0,0,.96) 46%,rgba(0,0,0,.72) 51%,rgba(0,0,0,.32) 57%,transparent 63%,transparent 100%)!important;mask-size:260% 100%;-webkit-mask-size:260% 100%;mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;mask-position:100% 0;-webkit-mask-position:100% 0;animation:cityPhotoSoftReveal 7.6s cubic-bezier(.6,0,.24,1) .45s forwards,cityPhotoSettle 18s ease-out 8.05s forwards!important}
html body.renewed-home .top-hero .top-hero__title{line-height:1.45!important;letter-spacing:.045em!important}
html body.renewed-home .top-hero__title-line--light{font-size:clamp(34px,3.4vw,50px);letter-spacing:.12em;margin-bottom:18px}
html body.renewed-home .top-hero__title-line--accent{font-size:clamp(46px,5.3vw,78px);display:flex;align-items:baseline;justify-content:center;gap:.04em;position:relative;padding-bottom:20px}
.hero-value-word{font-size:1.17em;letter-spacing:.015em}.hero-value-rest{font-size:1em;letter-spacing:.035em}
html body.renewed-home .top-hero__title-line--accent:after{content:'';position:absolute;bottom:0;left:calc(50% - 36px);width:72px;height:2px;background:#d2b564;transform-origin:left;animation:value-underline 1.1s ease 7.5s both}
@keyframes value-underline{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(max-width:1100px){html body.renewed-home .home-proposal-section .proposal-story{grid-template-columns:240px 1fr;gap:44px}html body.renewed-home .home-process{gap:16px}html body.renewed-home .home-process li{padding:24px 20px!important}html body.renewed-home .home-process h3{font-size:18px!important}}
@media(max-width:900px){html body.renewed-home .home-process{grid-template-columns:1fr 1fr!important}}
@media(max-width:767px){html body.renewed-home .home-proposal-section{padding-block:76px}html body.renewed-home .home-proposal-section .proposal-story{grid-template-columns:1fr;gap:36px}html body.renewed-home .home-proposal-section .home-representative__quote{font-size:33px;line-height:1.55!important}html body.renewed-home .home-proposal-section .proposal-lead{font-size:16px}html body.renewed-home .home-proposal-section .proposal-method>div{padding:16px 6px}html body.renewed-home .home-process{grid-template-columns:1fr 1fr!important;gap:12px}html body.renewed-home .home-process li{padding:22px 16px!important}html body.renewed-home .home-process h3{font-size:17px!important}html body.renewed-home .home-process p{font-size:13px!important}.home-process-top{margin-bottom:18px}.home-process-top>span{font-size:32px}html body.renewed-home .home-process-icon{width:32px;height:32px}html body.renewed-home .top-hero__title-line--light{font-size:27px;letter-spacing:.1em;margin-bottom:20px}html body.renewed-home .top-hero__title-line--accent{font-size:clamp(28px,7.25vw,48px);gap:0;padding-bottom:24px}.hero-value-word{font-size:1.15em}.hero-value-rest{letter-spacing:0}html body.renewed-home .top-hero__title-line--accent:after{width:48px;left:calc(50% - 24px)}}
@media(prefers-reduced-motion:reduce){html body.renewed-home .city-scene__image--sketch{display:none!important}html body.renewed-home .city-scene__image--real{mask-image:none!important;-webkit-mask-image:none!important;animation:none!important}html body.renewed-home .top-hero__title-line--accent:after{animation:none!important}}
html body.renewed-home #home-blueprint .blueprint-deck[data-enhanced]:before{color:#e0e9d9}
/* Keep the diagram stage as legible as the photograph, and align process cards. */
html body.renewed-home .city-scene__overlay{background:linear-gradient(90deg,#0b2e25cf,#0b2e25a8 50%,#0b2e25ba)!important}
html body.renewed-home .home-process li{align-content:start}
html body.renewed-home .home-process-top>span{font:500 42px/1 Georgia,serif;color:#9e8132;align-self:auto}
html body.renewed-home .home-process h3{text-wrap:balance}
html body.renewed-home #home-blueprint>.wrap>h2>span{display:inline-block}
@media(max-width:767px){html body.renewed-home .home-process-top>span{font-size:32px}html body.renewed-home .home-process h3{min-height:3.2em}}

/* The philosophy owns the first view. Each letter rises from its own baseline. */
html body.renewed-home .top-hero__inner{max-width:1600px;padding-inline:6%}
html body.renewed-home .top-hero .top-hero__copy{max-width:1360px;width:100%}
html body.renewed-home .top-hero .top-hero__title{line-height:1.2!important;letter-spacing:0!important}
html body.renewed-home .top-hero__title-line{animation:none!important;opacity:1!important;transform:none!important}
html body.renewed-home .top-hero__title-line--light{font-size:clamp(42px,4.8vw,76px);letter-spacing:.1em;margin-bottom:24px}
html body.renewed-home .top-hero__title-line--accent{font-size:clamp(64px,7.6vw,120px);gap:0;padding-bottom:38px;line-height:1.25;flex-wrap:nowrap}
html body.renewed-home .hero-value-word{font-size:1.16em;letter-spacing:.01em;white-space:nowrap}
html body.renewed-home .hero-value-rest{font-size:1em;letter-spacing:.015em;white-space:nowrap}
.hero-letter{display:inline-block;overflow:hidden;vertical-align:bottom;padding-top:.12em;padding-bottom:.08em;margin-block:-.12em -.08em}
.hero-letter>span{display:inline-block;transform-origin:50% 100%;animation:philosophy-letter-rise 1.15s cubic-bezier(.16,1,.3,1) calc(.2s + var(--letter-order)*.065s) both}
html body.renewed-home .top-hero__title-line--accent:after{left:calc(50% - 70px);width:140px;height:2px;transform-origin:center;animation:value-underline 1.7s cubic-bezier(.16,1,.3,1) 1.25s both}
@keyframes philosophy-letter-rise{from{opacity:0;transform:translate3d(0,112%,0) rotate(5deg)}to{opacity:1;transform:translate3d(0,0,0) rotate(0)}}
@media(max-width:767px){
 html body.renewed-home .top-hero__inner{padding-inline:22px}
 html body.renewed-home .top-hero__title-line--light{font-size:clamp(32px,8.5vw,52px);letter-spacing:.06em;margin-bottom:28px}
 html body.renewed-home .top-hero__title-line--accent{font-size:clamp(34px,9.65vw,70px);padding-bottom:32px}
 html body.renewed-home .hero-value-word{font-size:1.12em;letter-spacing:0}
 html body.renewed-home .hero-value-rest{letter-spacing:0}
 html body.renewed-home .top-hero__title-line--accent:after{width:72px;left:calc(50% - 36px)}
}
@media(prefers-reduced-motion:reduce){.hero-letter>span{animation:none!important;opacity:1;transform:none}}
html body.renewed-home .top-hero__title-line--light .hero-letter,
html body.renewed-home .top-hero__title-line--light .hero-letter > span{color:#fff}
