/* 101design — editorial motion, restrained texture, 2026 */
:root{--d101-fine-line:rgba(45,73,56,.075)}
.soft-section{background-color:#eeefe8;background-image:radial-gradient(circle,rgba(47,81,59,.22) 0 .95px,transparent 1.25px);background-size:22px 22px;background-position:10px 10px}
.concretes-section{background-color:#f7f6f2;background-image:linear-gradient(90deg,rgba(48,78,56,.085) 1px,transparent 1px);background-size:96px 100%}
/* Interior service pages: calm tonal surfaces, never repeated dotted textures. */
body:not(.home) .soft-section{background-image:none;background-color:#eef0e9;background-size:auto;background-position:initial}
/* Virtual Assistant: soft architectural paper and a quiet top-right line motif. */
body.page-id-11 .page-intro{position:relative;overflow:hidden;background:radial-gradient(ellipse at 95% 5%,rgba(87,121,96,.105) 0%,rgba(87,121,96,0) 49%),#f7f6f2}
body.page-id-11 .page-intro::after{content:"";position:absolute;right:clamp(28px,5vw,100px);top:clamp(48px,7vw,115px);width:clamp(145px,22vw,300px);height:clamp(145px,22vw,300px);border-top:1px solid rgba(36,73,48,.16);border-right:1px solid rgba(36,73,48,.16);pointer-events:none}
body.page-id-11 .page-intro>.shell{position:relative;z-index:1}
body.page-id-11 .soft-section{background-color:#edf0e9;background-image:linear-gradient(115deg,rgba(245,247,241,.56),rgba(229,235,225,.34));background-size:auto}
body.page-id-11 .soft-section:nth-of-type(4){background-color:#e9eee5;background-image:linear-gradient(135deg,#e8ede4,#f0f1eb)}
body.page-id-11 .soft-section:nth-of-type(6){background-color:#ecf0e9;background-image:none}
@media(max-width:760px){body.page-id-11 .page-intro::after{width:100px;height:100px;top:42px;right:22px;opacity:.5}}

.hero-image{isolation:isolate}
.hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,rgba(24,48,35,.13),transparent 53%);pointer-events:none}
.hero-image img{transition:transform 1.1s cubic-bezier(.2,.75,.15,1)}
@media (hover:hover){.hero-image:hover img{transform:scale(1.035)}}
.service-card .service-photo{transition:box-shadow .4s ease}
.service-card:hover .service-photo{box-shadow:0 18px 30px rgba(22,50,38,.13)}
.concretes-grid>a{transition:padding .3s ease,background .3s ease,border-color .3s ease}
.concretes-grid>a:hover{padding-left:12px;background:rgba(213,224,211,.22);border-color:#74907e}
.assistant-section{position:relative;overflow:hidden;isolation:isolate}
.assistant-section:before{content:"";position:absolute;right:-18vw;top:-25%;width:68vw;height:70vw;max-height:900px;border:1px solid rgba(234,244,233,.08);border-radius:50%;pointer-events:none;z-index:-1;box-shadow:0 0 0 65px rgba(234,244,233,.023),0 0 0 150px rgba(234,244,233,.016)}
.assistant-features>div{transition:transform .24s ease,color .24s ease}
.assistant-features>div:hover{transform:translateX(6px);color:white}
.d101-carousel-controls{display:none;justify-content:flex-end;align-items:center;gap:10px;margin:0 0 15px}.d101-carousel-controls[hidden]{display:none!important}
.d101-carousel-controls button{border:1px solid #aebcaf;background:transparent;color:var(--forest);width:42px;height:42px;display:grid;place-items:center;font-size:21px;transition:background .2s,color .2s}
.d101-carousel-controls button:hover:not(:disabled){background:var(--forest);color:white}
.d101-carousel-controls button:disabled{opacity:.35;cursor:default}
.d101-carousel-controls .d101-carousel-counter{font-size:11px;letter-spacing:.1em;color:#627468;margin-right:10px}
@media (max-width:760px){
.d101-carousel-controls:not([hidden]){display:flex}
.concretes-grid.d101-carousel{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;padding-bottom:12px}
.concretes-grid.d101-carousel::-webkit-scrollbar{display:none}
.concretes-grid.d101-carousel>a{flex:0 0 min(84vw,350px);min-height:245px;scroll-snap-align:start;padding:23px;background:#edf0e9;border-top:2px solid #728c78}
}
@media (prefers-reduced-motion:reduce){.hero-image img,.service-card .service-photo,.concretes-grid>a,.assistant-features>div{transition:none!important}.concretes-grid.d101-carousel{scroll-behavior:auto}}
