/* Calm architectural homepage: short copy, deliberate contrast and restrained actions. */
body{background:#f5f2ec;color:#26362c}.section{padding:90px max(6.5vw,24px)}h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(38px,4.4vw,64px);letter-spacing:-.035em;line-height:1.13}.eyebrow{font-size:10px;letter-spacing:.15em;color:#788071;margin-bottom:20px}.primary{background:#294331;color:#fff;border-radius:6px;box-shadow:none}.primary:hover{background:#3d5945}.quiet-link{display:inline-flex;align-items:center;min-height:44px;font-size:13px;color:#3d5542;border-bottom:1px solid #3d554240}.quiet-link:hover{border-color:#3d5542}.hero-shell{padding:clamp(18px,3.8vw,56px);background:#ddd5c5}.hero-shell .hero{height:calc(100svh - 7.6vw);min-height:640px;max-height:950px;border-radius:10px;box-shadow:0 20px 55px #30281a21}.hero-shell .header{top:calc(clamp(18px,3.8vw,56px) + 22px);left:8vw;right:8vw}.hero-shell .header nav{font-size:12px;gap:18px}.hero-shell .header nav a,.hero-shell .header nav button{font-size:12px}.hero-shell .brand img{width:44px;height:44px}.hero-shell .brand span{font-size:8px}.hero-shell .hero-shade{background:linear-gradient(90deg,#171a16a1,transparent 80%),linear-gradient(0deg,#1419119c,transparent 58%)}.hero-shell .hero-copy{bottom:135px;max-width:820px}.hero-shell h1{font-size:clamp(42px,4.8vw,70px);line-height:1.12;letter-spacing:-.035em;color:#faf4e8}.hero-shell h1 span{color:#dfd6c4}.hero-shell .hero-copy .eyebrow{font-size:10px;color:#dfd6c4;letter-spacing:.18em}.hero-purpose{font-size:16px;line-height:1.65;color:#e5dfd3;margin-top:22px;max-width:420px}.hero-shell .hero-actions{margin-top:28px;gap:14px}.hero-shell .hero-actions a,.hero-shell .hero-actions button{font-size:13px;border-radius:5px;padding:14px 20px;min-height:48px;box-shadow:none}.hero-shell .hero-bottom{left:6%;right:6%;bottom:24px;min-height:45px;padding-top:16px;align-items:center;justify-content:space-between;border-color:#ffffff30}.hero-location{font-size:10px;letter-spacing:.14em;color:#dfd6c4}.hero-shell .film-control{display:flex;align-items:center;gap:14px}.hero-shell .film-control button{font-size:11px;color:#eee5d7;min-height:44px}.hero-shell .film-control span{font-size:9px;color:#c4bfaf}.section-top{margin-bottom:40px;align-items:center}.section-top>p{font-size:15px;max-width:320px;color:#687663}.home-frame{border-radius:12px;box-shadow:0 20px 50px #25372c0c}.room-nav{background:#263a2fef}.room-nav button[aria-pressed=true]{background:#6b775e}.hotspot[aria-pressed=true]{background:#78886f;border-color:#78886f}.hotspot{box-shadow:0 6px 20px #1e342923}.hotspot:before{animation-duration:3.6s}.detail-content .primary{background:#294331}.room-experience{border-radius:6px;background:transparent}.explore-caption{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:20px;font-size:12px;color:#7a8274}.explore-caption a{color:#3d5542;min-height:44px;display:flex;align-items:center}.solutions{background:#ece8df}.pathways{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:50px}.property-path{display:block;position:relative;overflow:hidden;height:360px;isolation:isolate;border-radius:8px;color:#fff}.property-path img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s}.property-path:hover img{transform:scale(1.025)}.property-shade{position:absolute;inset:0;background:linear-gradient(0deg,#152519d9,transparent 85%)}.property-copy{position:absolute;left:28px;right:28px;bottom:26px}.property-copy>span:first-child{font-size:10px;letter-spacing:.15em;color:#e4e0d4}.property-copy h3{font:400 35px/1.15 Georgia,serif;color:#faf5eb;margin-top:15px;letter-spacing:-.025em}.property-copy p{font-size:13px;color:#e6e4d7;margin-top:13px}.property-arrow{position:absolute;right:0;bottom:7px;width:42px;height:42px;border:1px solid #fff6;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px}.solution-groups{display:grid;grid-template-columns:1fr 1fr;gap:0 45px}.solution-group{border-top:1px solid #26362c27;align-self:start}.solution-group summary{list-style:none;display:flex;align-items:center;gap:18px;cursor:pointer;padding:24px 0;min-height:88px}.solution-group summary::-webkit-details-marker{display:none}.group-number{font-size:10px;color:#8a9081}.solution-group strong{display:block;font-size:20px;font-weight:400;color:#2a3c2e}.solution-group small{display:block;font-size:12px;color:#788271;margin-top:5px}.group-plus{margin-left:auto;color:#63775e;font-size:24px;font-weight:300}.solution-group[open] .group-plus{transform:rotate(45deg)}.group-links{padding:0 0 18px 30px}.group-links a{display:flex;align-items:center;justify-content:space-between;font-size:13px;min-height:44px;padding:10px 0;border-top:1px solid #26362c14;color:#415740}.group-links a:hover{text-decoration:underline}.about{background:#f5f2ec}.about-grid{gap:7vw}.about-grid p{font-size:18px;line-height:1.8;max-width:420px;color:#667261;margin-bottom:20px}.approach-line{display:flex;gap:30px;justify-content:space-between;border-top:1px solid #26362c25;padding-top:25px;margin-top:48px;color:#71816b;font-size:13px}.consult{display:flex;align-items:center;justify-content:space-between;gap:40px;background:#dfe3d7}.consult h2{font-size:clamp(40px,4.8vw,70px)}.consult p:not(.eyebrow){font-size:16px;max-width:none;margin-top:22px;color:#65755f}.consult-actions{display:flex;flex-direction:column;align-items:flex-start;gap:20px}.consult-actions .button{font-size:14px;min-width:180px}.consult-actions .quiet-link{font-size:12px}footer{background:#26382d;color:#e9e4d8;padding:48px 6.5vw}.whatsapp{border-radius:50%;width:54px;height:54px;min-height:54px;padding:14px;background:#294331;box-shadow:0 5px 20px #0002}.whatsapp span{display:none}.whatsapp svg{width:26px;height:26px}.whatsapp:hover{background:#3d5945}
@media(max-width:1050px){.hero-shell .header nav{gap:10px;grid-template-columns:repeat(3,1fr) 120px repeat(3,1fr)}.hero-shell .header nav a,.hero-shell .header nav button{font-size:11px}.property-path{height:300px}.property-copy h3{font-size:30px}}
@media(max-width:700px){.section{padding:60px 22px}h2{font-size:40px}.hero-shell{padding:12px}.hero-shell .hero{min-height:650px;height:calc(100svh - 24px);border-radius:8px}.hero-shell .header{top:27px;left:30px;right:30px}.hero-shell .brand img{width:40px;height:40px}.hero-shell .brand span{font-size:7px}.hero-shell .header nav{grid-template-columns:1fr;gap:0}.hero-shell .header nav a,.hero-shell .header nav button{font-size:13px}.hero-shell .hero-copy{left:7%;right:7%;bottom:125px}.hero-shell h1{font-size:clamp(32px,8.3vw,48px)}.hero-shell .hero-copy .eyebrow{font-size:8px}.hero-purpose{font-size:14px;margin-top:18px}.hero-shell .hero-actions{gap:10px;margin-top:22px}.hero-shell .hero-actions a,.hero-shell .hero-actions button{font-size:12px;padding:12px 14px}.hero-shell .hero-bottom{bottom:17px;min-height:64px;padding-top:12px;gap:10px;align-items:center}.hero-location{font-size:8px;letter-spacing:.1em;max-width:135px;line-height:1.7}.hero-shell .film-control{display:block;text-align:right}.hero-shell .film-control span{font-size:8px}.hero-shell .film-control button{font-size:10px}.section-top{display:block;margin-bottom:28px}.section-top>p{margin-top:20px;font-size:14px}.section-top .quiet-link{margin-top:15px}.explore-caption{font-size:10px;align-items:start;gap:15px}.explore-caption>span{max-width:150px;line-height:1.6}.explore-caption a{max-width:160px;min-height:0;text-align:right}.pathways{grid-template-columns:1fr;gap:18px;margin-bottom:30px}.property-path{height:285px}.property-copy{left:23px;right:23px;bottom:23px}.property-copy h3{font-size:32px}.solution-groups{grid-template-columns:1fr}.solution-group summary{padding:21px 0;min-height:82px}.solution-group strong{font-size:19px}.about-grid p{font-size:16px}.approach-line{gap:15px;font-size:11px;line-height:1.6;margin-top:30px;padding-top:20px}.consult{display:block}.consult h2{font-size:42px}.consult p:not(.eyebrow){font-size:14px}.consult-actions{margin-top:25px;gap:15px}footer{padding:40px 22px}.whatsapp{width:50px;height:50px;min-height:50px;right:16px;bottom:16px;padding:12px}}
@media(prefers-reduced-motion:reduce){.property-path img{transition:none}.property-path:hover img{transform:none}}

/* Restrained movement for the homepage's two service entry points. */
.audit-routes .route-grid>a{transition:transform 320ms cubic-bezier(.2,.7,.2,1),box-shadow 320ms ease,border-color 320ms ease,background-color 320ms ease}
.audit-routes .route-grid>a b{transition:transform 320ms cubic-bezier(.2,.7,.2,1)}
#solutions .solution-group summary{border-radius:4px;transition:background-color 300ms ease,box-shadow 300ms ease}
#solutions .solution-group summary>span:nth-child(2){transition:transform 320ms cubic-bezier(.2,.7,.2,1)}
#solutions .group-plus{transition:transform 320ms cubic-bezier(.2,.7,.2,1),color 300ms ease}
.audit-routes .route-grid>a:focus-visible{background:#e9e9df;border-color:#29433165;box-shadow:0 12px 24px -14px #26382d40;transform:translateY(-4px)}
.audit-routes .route-grid>a:focus-visible b{transform:translate(2px,-2px)}
#solutions .solution-group summary:focus-visible{background:#f7f4ed80;box-shadow:0 5px 18px -14px #26382d33}
#solutions .solution-group summary:focus-visible>span:nth-child(2){transform:translateX(4px)}
@media(hover:hover) and (pointer:fine){
 .audit-routes .route-grid>a:hover{background:#e9e9df;border-color:#29433165;box-shadow:0 12px 24px -14px #26382d40;transform:translateY(-4px)}
 .audit-routes .route-grid>a:hover b{transform:translate(2px,-2px)}
 #solutions .solution-group summary:hover{background:#f7f4ed80;box-shadow:0 5px 18px -14px #26382d33}
 #solutions .solution-group summary:hover>span:nth-child(2){transform:translateX(4px)}
 #solutions .solution-group summary:hover .group-plus{color:#762d4c}
 #solutions .solution-group:not([open]) summary:hover .group-plus{transform:rotate(90deg)}
}
@media(prefers-reduced-motion:reduce){
 .audit-routes .route-grid>a,.audit-routes .route-grid>a b,#solutions .solution-group summary,#solutions .solution-group summary>span:nth-child(2),#solutions .group-plus{transition:none!important}
 .audit-routes .route-grid>a:is(:hover,:focus-visible),.audit-routes .route-grid>a:is(:hover,:focus-visible) b,#solutions .solution-group summary:is(:hover,:focus-visible)>span:nth-child(2){transform:none}
 #solutions .solution-group:not([open]) summary:hover .group-plus{transform:none}
}
