/* Art direction: oversized cut-paper geometry, quiet reading areas. */
:root{--paper:#fffcf3;--pop-ink:#203c32}
body{background:#fffcf3}
#top>section{position:relative;isolation:isolate}
.pop-backdrop{position:absolute!important;inset:0;z-index:-1!important;pointer-events:none;overflow:hidden;contain:paint}
.pop-backdrop:before,.pop-backdrop:after{content:"";position:absolute;display:block}
/* An asymmetric lime disk and a coral arc frame the opening statement. */
.hero{background:#fff5d8}
.ambient-field i{background:#d4ed8c;opacity:.9;border-radius:50%;left:-22%;top:-20%;width:85%;max-width:1000px}
.ambient-field i:nth-child(2){background:#ffb598;opacity:.85;left:26%;top:76%;width:46%;border-radius:48% 48% 0 0}
.ambient-field i:nth-child(3){background:#cab6f3;opacity:.85;left:43%;top:15%;width:13%;border-radius:28%}
.hero-visual{background:#d3c3ef}
.hero .business-slider{background:linear-gradient(145deg,#e5d9f6 0%,#f4edf9 72%);color:#2d3d35;border-radius:36px 0 0 36px;border-left:1px solid #b9a6d1}
.slider-top,.slider-bottom,.slide-route{border-color:#bbacce}
.slide-index{color:#715191}.slider-top,.slider-bottom,.business-slide>p{color:#5b5067}
.hero-meta span{background:#fffaf0d9;border-color:#afc882}
/* A small dotted field and cropped green ring balance the white reading area. */
.editorial-about{background:#fffcf3}
.editorial-about .pop-backdrop:before{width:340px;height:340px;border:65px solid #d9edb5;border-radius:50%;right:-230px;top:40px}
.editorial-about .pop-backdrop:after{width:120px;height:100px;left:2%;bottom:12px;background:radial-gradient(#e69c79 2px,transparent 2.5px) 0 0/16px 16px}
/* Architecture lives on a saturated lilac field, with a clean white diagram. */
.pop-architecture{background:#dfd2f2!important;color:#203c32}
.pop-architecture .pop-backdrop:before{width:450px;height:450px;right:-270px;top:0;border-radius:50%;background:#c8b4e5}
.pop-architecture .pop-backdrop:after{width:180px;height:180px;left:-100px;bottom:30px;border:36px solid #fdf8e7;border-radius:50%}
.interactive-architecture{background:#fffdf7;box-shadow:0 10px 0 #bca7d244;border-color:#c2afd6}
.editorial-capabilities{background:#e1edc2}
.editorial-capabilities .pop-backdrop:before{width:380px;height:380px;right:-250px;top:60px;background:#bfd88f;border-radius:70px;transform:rotate(24deg)}
.capability-panel{background:#fffaf0;border:1px solid #c4d29f;box-shadow:0 9px 0 #c0d49c66}
.editorial-flow{background:#285d49}
.editorial-flow .pop-backdrop:before{width:450px;height:450px;border:70px solid #39735b;border-radius:50%;right:-300px;top:50px}
.editorial-flow .pop-backdrop:after{width:150px;height:90px;left:-60px;bottom:30px;background:repeating-linear-gradient(-45deg,transparent 0 12px,#578669 12px 15px)}
.pop-growth{background:#ffdfb9}
.pop-growth .pop-backdrop:before{width:380px;height:380px;border:60px solid #f7c590;border-radius:50%;right:-245px;top:40px}
.phase{background:#fffcf5;box-shadow:0 7px 0 #bc7e3920;border-color:#d7b78d}
.phase.is-current{background:#edf4d6;box-shadow:inset 0 5px #66975a,0 7px 0 #bc7e3920}
#domains{background:#f5eedf;color:#294231}
#domains .pop-backdrop:before{width:360px;height:360px;border-radius:50%;background:#e9ddc4;right:-250px;top:30px}
.domain-progress{background:#f5eedff5;backdrop-filter:blur(8px)}
.domain.reference-card{background:#dfedb9;border:1px solid #adc78e;border-radius:30px;box-shadow:0 -8px 30px #344c2310}
.domain.reference-card:nth-of-type(2){background:#ffdab8;border-color:#deb187}
.domain.reference-card:nth-of-type(3){background:#e0cef3;border-color:#bca5d2}
.reference-card .domain-connection{background:#fffcf2e6}
#cases{background:#e1ede9}
#cases .pop-backdrop:before{width:400px;height:400px;left:-300px;top:80px;background:#c0dacf;border-radius:50%}
.case-board{background:#fffdf5;border:1px solid #bfd3c9}
.case:nth-of-type(even) .case-board{background:#fae3cc}
.role{background:#eee2f6}
.role .pop-backdrop:before{width:380px;height:380px;border:70px solid #dcc8e9;border-radius:50%;right:-250px;bottom:20px}
.role-art{background:#facba7;box-shadow:10px 10px 0 #d1bde0;border:1px solid #d4a880}
#partnership{background:#fff6dc}
#partnership .pop-backdrop:before{width:160px;height:160px;right:-90px;top:35px;background:#f7c87f;border-radius:30px;transform:rotate(25deg)}
.company{background:#dce9c9}
.company .pop-backdrop:before{width:380px;height:380px;right:-290px;bottom:0;border:60px solid #c1d5a6;border-radius:50%}
/* The closing CTA is a bold full-width peach field. */
.cta{background:#ffc69f;border-top:1px solid #e9b58f}
.cta .pop-backdrop:before{width:330px;height:330px;border:55px solid #ffdfbf;border-radius:50%;left:-230px;top:-90px}
.cta .pop-backdrop:after{width:210px;height:210px;border-radius:50%;right:-145px;bottom:-120px;background:#e3edac}
.cta h2,.cta .title{color:#234934}.cta p,.cta .intro{color:#485e40}
.cta .btn{background:#285e45;color:#fffbea;border-color:#285e45;box-shadow:0 6px 0 #a5744640}
.cta .btn:hover{background:#1c4935;color:#fff}
/* Match the standalone enquiry screen. */
body.contact-pop{background:#efe3f7}
.contact-pop main{position:relative;isolation:isolate}
.contact-pop main:before{content:"";position:absolute;z-index:-1;pointer-events:none;left:-200px;top:20px;width:400px;height:400px;background:#dfedbb;border-radius:50%}
.contact-pop .form-area{background:#fffdf5;box-shadow:10px 10px 0 #d4bee4;border-color:#c9b5d9}
.contact-pop .contact-intro h1{color:#28563e}
@media(max-width:800px){
 .hero .business-slider{border-radius:28px 28px 0 0;border-left:0;border-top:1px solid #b9a6d1}
 .ambient-field i{width:135%;left:-55%;top:-8%}
 .ambient-field i:nth-child(2){width:70%;left:70%;top:32%}
 .ambient-field i:nth-child(3){width:22%;left:78%;top:8%}
 .pop-backdrop:before{opacity:.7}
 .editorial-about .pop-backdrop:after{width:64px;height:50px;left:auto;right:18px;bottom:4px;background-size:12px 12px;opacity:.6}
 .domain.reference-card{border-radius:24px}
 .role-art{box-shadow:6px 6px 0 #d1bde0}
 .contact-pop .form-area{box-shadow:5px 6px 0 #d4bee4}
 .contact-pop main:before{width:250px;height:250px;left:-180px}
}
@media(prefers-reduced-motion:reduce){.ambient-field i{animation:none!important;transform:none!important}}
