.arch-design-page{--family:#40594f;--family-light:#e2e9e3;--family-line:#cbd6ce;--family-ink:#233c31}
.arch-hero{min-height:850px;position:relative;isolation:isolate;color:white;padding:140px var(--pad) 100px;background:var(--family-ink);overflow:hidden}
.arch-hero-image,.arch-hero-shade{position:absolute;inset:0;width:100%;height:100%;z-index:-1}
.arch-hero-image{object-position:center 55%}
.arch-hero-shade{background:linear-gradient(90deg,#08150fde 0%,#08150f80 55%,#08150f22 100%),linear-gradient(180deg,#08150f99,transparent 45%,#08150f75)}
.arch-hero-content{max-width:1200px}.arch-breadcrumb{display:flex;align-items:center;gap:15px;font-size:13px;margin-bottom:40px}.arch-breadcrumb a{border-bottom:1px solid #ffffff70;padding-bottom:4px}.arch-breadcrumb .plus{color:var(--yellow)}
.family-kicker{display:block;font-size:14px;letter-spacing:.04em;margin-bottom:16px;color:#dce5dc}
.arch-hero h1{font-size:clamp(85px,12vw,184px);line-height:.95;letter-spacing:-.065em;margin:0 0 28px}
.arch-tagline{font-size:clamp(31px,3.3vw,50px);line-height:1.12;letter-spacing:-.035em;max-width:720px}
.arch-lead{max-width:570px;margin-top:25px;color:#e1e5dc;font-size:16px;line-height:1.65}
.arch-cta{display:inline-flex;align-items:center;justify-content:space-between;gap:44px;margin-top:28px;padding:18px 22px;border:1px solid #ffffff70;font-size:14px;transition:background .3s,color .3s}
.arch-cta .plus{color:var(--yellow)}.arch-cta:hover{background:var(--family-light);color:var(--family-ink)}.arch-cta:hover .plus{color:var(--family)}
.arch-hero-bottom{position:absolute;bottom:27px;left:var(--pad);right:var(--pad);display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid #ffffff45;padding-top:20px;font-size:12px;color:#e2e8df}
.arch-understanding{display:grid;grid-template-columns:1.15fr .85fr;gap:9vw;align-items:center;padding-top:110px;padding-bottom:110px}
.arch-understanding h2{font-size:clamp(40px,4.6vw,72px);max-width:620px;margin-bottom:32px}.arch-understanding p{color:#505850;margin-top:20px;max-width:600px}.arch-understanding p:last-child{color:var(--family-ink);border-left:3px solid var(--family);padding-left:20px}
.arch-detail-image{position:relative}.arch-detail-image img{aspect-ratio:4/5;object-position:center}.arch-detail-image .plus{color:var(--yellow);position:absolute;right:-20px;top:-20px;width:55px;height:55px}
.arch-phase{display:grid;grid-template-columns:.95fr 1.05fr;gap:7vw;align-items:start;padding-top:90px;padding-bottom:90px;border-top:1px solid var(--family-line)}
.phase-image{position:sticky;top:35px;overflow:hidden;background:var(--family);min-width:0}.phase-image img{aspect-ratio:5/6;object-position:center}.phase-image .plus{position:absolute;right:22px;bottom:22px;color:var(--yellow)}
.phase-copy{min-width:0}.phase-copy h2{font-size:clamp(36px,3.65vw,58px);line-height:1.06;color:var(--family-ink)}.phase-phrase{font-family:var(--serif);font-size:clamp(25px,2.25vw,35px);font-weight:400;font-style:italic;line-height:1.2;letter-spacing:-.025em;color:var(--family);margin:24px 0}.phase-description{font-size:16px;color:#515a52;line-height:1.65;max-width:600px}
.phase-reverse .phase-image{grid-column:2;grid-row:1}.phase-reverse .phase-copy{grid-column:1;grid-row:1}
.phase-stone{background:var(--family-light)}.phase-deep{background:var(--family);color:white;border-color:var(--family)}.phase-deep .phase-copy h2{color:white}.phase-deep .phase-phrase{color:#cfdad1}.phase-deep .phase-description{color:#e1e7df}.phase-deep .phase-image img{aspect-ratio:5/5.4}
.phase-details{margin-top:30px;border-top:1px solid var(--family-line);border-bottom:1px solid var(--family-line)}.phase-details summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0;cursor:pointer;font-size:14px;color:var(--family-ink)}.phase-details summary::-webkit-details-marker{display:none}.phase-details summary .plus{color:var(--family)}.phase-details[open] summary .plus{--plus-angle:45deg}
.scope-content{padding:4px 0 25px}.phase-details[open] .scope-content{animation:scope-reveal .35s ease}.scope-content h4{font-size:14px;font-weight:400;margin:8px 0 18px}.scope-items{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;column-gap:22px}.scope-items li{display:flex;gap:11px;align-items:flex-start;padding:12px 0;border-top:1px solid #40594f25;font-size:14px;line-height:1.5}.scope-dot{width:5px;height:5px;background:var(--family);flex-shrink:0;margin-top:8px}.scope-result{margin-top:25px;border-left:3px solid var(--family);padding-left:18px}.scope-result p{font-size:16px;color:var(--family-ink)}.scope-note{font-size:14px;margin-top:24px;color:#5b645b}
.phase-deep .phase-details{border-color:#ffffff45}.phase-deep .phase-details summary{color:white}.phase-deep .phase-details summary .plus{color:var(--yellow)}.phase-deep .scope-items li{border-color:#ffffff25}.phase-deep .scope-dot{background:var(--yellow)}.phase-deep .scope-result{border-color:var(--yellow)}.phase-deep .scope-result p{color:white}
.arch-closing{background:var(--family-light)}.arch-closing .eyebrow .plus{color:var(--family)}.arch-closing-grid{display:grid;grid-template-columns:1.5fr .5fr;gap:8vw;align-items:center}.arch-closing h2{max-width:800px;font-size:clamp(45px,5.2vw,82px);color:var(--family-ink)}.arch-closing p{max-width:570px;margin-top:28px;color:#455249}.arch-closing-plus{width:clamp(100px,17vw,250px);height:clamp(100px,17vw,250px);color:var(--family);justify-self:end}.arch-closing .cta .plus{color:var(--yellow)}.arch-closing .cta:hover .plus{color:var(--family)}
@keyframes scope-reveal{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1100px){.arch-understanding{gap:50px}.arch-phase{gap:45px}.scope-items{grid-template-columns:1fr}.arch-hero{min-height:850px}}
@media(max-width:760px){.arch-hero{padding:115px 24px 100px;min-height:850px}.arch-hero-image{object-position:65% center}.arch-hero-shade{background:linear-gradient(90deg,#08150fe0,#08150f70),linear-gradient(0deg,#08150fa0,transparent 70%)}.arch-breadcrumb{gap:10px;font-size:12px;margin-bottom:35px}.family-kicker{font-size:13px}.arch-hero h1{font-size:clamp(68px,20vw,110px);max-width:550px;margin-bottom:28px}.arch-tagline{font-size:33px;max-width:510px}.arch-lead{font-size:16px;margin-top:22px}.arch-hero-bottom{left:24px;right:24px;font-size:11px}.arch-hero-bottom span:last-child{max-width:200px;text-align:right}.arch-understanding{grid-template-columns:1fr;gap:45px;padding-top:64px;padding-bottom:64px}.arch-understanding h2{font-size:44px}.arch-detail-image{margin-right:15px}.arch-detail-image img{aspect-ratio:5/4}.arch-detail-image .plus{width:42px;height:42px;right:-15px;top:-15px}.arch-phase{grid-template-columns:1fr;gap:34px;padding-top:58px;padding-bottom:58px}.phase-image{position:relative;top:auto}.phase-image img,.phase-deep .phase-image img{aspect-ratio:5/4}.phase-reverse .phase-image,.phase-reverse .phase-copy{grid-column:auto;grid-row:auto}.phase-copy h2{font-size:39px}.phase-phrase{font-size:28px;margin:23px 0}.scope-items{grid-template-columns:1fr}.arch-closing-grid{grid-template-columns:1fr;gap:30px}.arch-closing h2{font-size:46px}.arch-closing-plus{width:78px;height:78px}.arch-closing .cta{gap:26px;font-size:13px}.arch-phase.brand-watermarked::before{top:45%;opacity:.025}}
@media(prefers-reduced-motion:reduce){.phase-details[open] .scope-content{animation:none}.arch-cta{transition:none}}

/* Service constellations: circular previews, rectangular scope panels. */
.arch-phases{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:6vw;row-gap:100px;padding:50px var(--pad) 110px;overflow:hidden;background:white}
.arch-phase{display:block;padding:0;border:0;background:transparent;color:var(--black);min-width:0;position:relative}
.arch-phase.orbit-large{grid-column:span 7;--orbit-size:clamp(360px,40vw,620px)}
.arch-phase.orbit-small{grid-column:span 5;--orbit-size:clamp(300px,29vw,450px)}
.arch-phase:nth-child(2){margin-top:120px}.arch-phase:nth-child(4){margin-top:55px}.arch-phase:nth-child(7){margin-top:120px}
.phase-copy{position:relative;width:100%;min-width:0}
.phase-copy::before{content:'';position:absolute;left:0;top:0;width:var(--orbit-size);height:var(--orbit-size);border:1px solid var(--family-line);border-radius:50%;pointer-events:none;z-index:0;transition:border-color .4s,background .4s}
.arch-phase:nth-child(4) .phase-copy::before{background:var(--family-light);border-color:var(--family-light)}
.phase-preview{position:relative;z-index:1;padding:clamp(38px,4vw,68px) 54px 30px 25px;min-height:calc(var(--orbit-size) - 65px)}
.phase-copy h2{color:var(--family-ink);font-size:clamp(34px,3.2vw,51px);max-width:490px}.orbit-small .phase-copy h2{font-size:clamp(32px,2.7vw,43px)}
.phase-phrase{color:var(--family);font-size:clamp(24px,2.1vw,32px);max-width:460px;margin:24px 0}.phase-description{color:#515a52;max-width:490px;font-size:16px}
.phase-details{position:static;margin:0;border-top:0;border-bottom:1px solid var(--family-line)}
.phase-details summary{position:static;justify-content:flex-start;color:var(--family-ink);padding:22px 25px;font-size:14px;min-height:65px}
.orbit-trigger{position:absolute;top:calc(var(--orbit-size)/2 - 24px);left:calc(var(--orbit-size) - 24px);width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:white;border:1px solid var(--family-line);z-index:2;transition:background .3s,border-color .3s}
.phase-details summary .orbit-trigger .plus{color:var(--family);width:20px;height:20px}
.phase-details summary:hover .orbit-trigger,.phase-details[open] .orbit-trigger{background:var(--family);border-color:var(--family)}
.phase-details summary:hover .orbit-trigger .plus,.phase-details[open] summary .orbit-trigger .plus{color:var(--yellow)}
.scope-content{background:var(--family-light);padding:24px;margin-top:24px;margin-bottom:25px;position:relative;z-index:1}
.scope-items{grid-template-columns:1fr 1fr;column-gap:18px}.orbit-small .scope-items{grid-template-columns:1fr}
.arch-visual-pause{grid-column:1/-1;position:relative;margin:20px 0 0}.arch-visual-pause img{height:clamp(310px,36vw,530px);object-position:center 55%}.arch-visual-pause>.plus{position:absolute;bottom:28px;right:28px;color:var(--yellow);width:55px;height:55px}
@media(max-width:1100px) and (min-width:761px){.arch-phases{column-gap:40px;row-gap:70px}.arch-phase.orbit-large,.arch-phase.orbit-small{grid-column:span 6;--orbit-size:calc((100vw - var(--pad)*2 - 40px)/2)}.phase-preview{padding:38px 45px 25px 18px}.phase-copy h2,.orbit-small .phase-copy h2{font-size:35px}.phase-phrase{font-size:26px}.scope-items{grid-template-columns:1fr}}
@media(max-width:760px){.arch-phases{display:block;padding:15px 24px 64px;overflow:hidden}.arch-phase.orbit-large,.arch-phase.orbit-small{--orbit-size:min(calc(100vw - 48px),440px);max-width:540px;margin:0 auto 60px}.phase-preview{padding:42px 44px 24px 18px;min-height:calc(var(--orbit-size) - 65px)}.phase-copy h2,.orbit-small .phase-copy h2{font-size:35px;line-height:1.08;max-width:430px;padding-right:10px}.phase-phrase{font-size:26px;margin:22px 0}.phase-description{font-size:16px;padding-right:5px}.phase-details summary{padding:22px 18px}.orbit-trigger{width:44px;height:44px;top:calc(var(--orbit-size)/2 - 22px);left:calc(var(--orbit-size) - 22px)}.scope-content{padding:20px;margin-top:20px}.scope-items{grid-template-columns:1fr}.arch-visual-pause{margin:0 -24px 64px}.arch-visual-pause img{height:320px;object-position:60% center}.arch-visual-pause>.plus{width:40px;height:40px;right:24px;bottom:24px}}
@media(prefers-reduced-motion:reduce){.phase-copy::before,.orbit-trigger{transition:none}}
