/* Semantic light, editorial line breaking, and final customer-facing controls. */
h1,h2,h3,h4{line-break:strict;word-break:normal;overflow-wrap:normal;text-wrap:balance}
p,li,.quote{line-break:strict;word-break:normal;overflow-wrap:break-word;text-wrap:pretty}
.type-phrase{display:inline-block;max-width:100%;vertical-align:baseline}
.type-ending{white-space:nowrap}.copy-line{display:block}
.label,.kicker,.eyebrow,.section-label,.en{word-break:keep-all;overflow-wrap:normal}
.section-label{flex-wrap:wrap;row-gap:8px}
.service-tags{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:12px;font-size:14px;line-height:1.9;color:#a9bbc6}
.service-tags>span{display:inline-block;white-space:nowrap}
.service-tags>span+span:before{content:"";display:inline-block;width:2px;height:2px;border-radius:50%;background:var(--gold);vertical-align:middle;margin-right:12px;opacity:.55}
.hero-copy-main .hero-description>span:last-child{max-width:100%}
.interior .hero .hero-copy{max-width:760px}
.interior .hero h2{max-width:820px}
.hero-tools{margin-left:auto}.decor-control{width:44px;height:44px;justify-content:center;padding:0;border-radius:50%;background:#07121de0}
.decor-control>span:first-child{font-size:16px;line-height:1}.hero-bottom{bottom:35px}
.symbolic-motion{pointer-events:none;position:relative;isolation:isolate;contain:layout style;--symbol-ink:#d2b483;--symbol-base:.22;--symbol-strong:.85}
.symbolic-motion svg{display:block;width:100%;height:100%;overflow:visible}
.symbol-drawing{fill:none;stroke-width:1.1;stroke-linecap:round;stroke-linejoin:round}
.symbol-drawing>*{vector-effect:non-scaling-stroke}
.symbol-base{opacity:var(--symbol-base);stroke-width:.8}
.symbol-thread{stroke-width:1.6;opacity:var(--symbol-strong);stroke-dasharray:.18 .82;animation:symbol-travel 21s cubic-bezier(.4,0,.6,1) infinite;filter:drop-shadow(0 0 5px #c9a66b60)}
.symbol-thread-1{animation-delay:-6.5s;animation-duration:25s;opacity:.55}.symbol-thread-2{animation-delay:-13s;animation-duration:29s;opacity:.4}
.symbol-node{stroke:none;fill:#ead3a2;opacity:.8}
.symbol-halo{stroke:none;fill:#cba96c08;animation:symbol-breathe 13s ease-in-out infinite alternate;transform-origin:360px 220px}
.symbol-ring{opacity:.65;stroke-width:1}.symbol-soft-ring{opacity:.2;stroke-width:.8}
.symbol-focus{animation:focus-drift 19s cubic-bezier(.4,0,.6,1) infinite alternate;transform-origin:360px 220px}
.symbol-breathe,.symbol-listen{animation:symbol-breathe 17s ease-in-out infinite alternate;transform-origin:300px 220px}
.symbol-listen{animation-name:symbol-listen;animation-duration:21s}
.symbol-traveller{animation:traveller-life 21s linear infinite}
.hero-symbol{position:absolute!important;right:-3%;top:50%;transform:translateY(-40%);width:min(58vw,790px);height:540px;z-index:0;opacity:.68;--symbol-base:.19}
.interior .hero .wrap{z-index:2}.interior .hero:after{display:none}
.hero-symbol:before{content:"";position:absolute;inset:20%;background:radial-gradient(ellipse,#b88e4820,transparent 70%);filter:blur(38px);z-index:-1}
.section-symbol{position:absolute!important;right:-5%;top:8%;width:min(42vw,640px);height:430px;opacity:.28;z-index:0}
.principal-section .section-symbol{opacity:.22;right:3%;top:14%;width:40%;--symbol-strong:.7}
.principal-section .symbol-drawing{stroke:#886439}.principal-section .symbol-node{fill:#886439}
.principal-layout{position:relative;z-index:1}
[data-symbol-kind]{overflow:hidden;isolation:isolate;position:relative}
[data-symbol-kind]>.container{position:relative;z-index:1}
.has-symbol{position:relative;padding-right:180px;max-width:1180px!important;min-height:140px}
.chapter-symbol{position:absolute!important;right:-10px;top:-25px;width:210px;height:170px;opacity:.75}
.symbol-card{position:relative}
.card-symbol{width:98px;height:68px;position:absolute!important;right:15px;top:20px;opacity:.7}
.service-row.symbol-card{padding-right:0}.service-row .card-symbol{position:relative!important;grid-column:1;grid-row:1;width:50px;height:58px;right:auto;top:auto;align-self:start;margin-top:25px}
.service-row .row-no{grid-column:1;grid-row:1;align-self:start}
.service-row>div:not(.card-symbol){grid-column:2}.service-row>.row-arrow{grid-column:3}
.service-row{grid-template-columns:54px minmax(0,1fr) 20px;gap:20px}
.service-row .card-symbol .symbol-drawing{stroke-width:1.4}.service-row .card-symbol .symbol-thread{stroke-width:1.5}
.overview-card,.interior .service-card,.strength{padding-top:110px!important}
.overview-card>.service-no,.interior .service-card>.service-no{position:absolute;left:30px;top:32px}
.strength>.round,.strength>.icon-circle{position:absolute;left:30px;top:35px}
.value-statement{padding-top:85px;position:relative}.value-statement .card-symbol{right:auto;left:24px;top:3px;width:105px;height:75px}
.value-statement:first-child .card-symbol{left:0}
.engagement-plan.symbol-card{padding-top:105px!important}.engagement-plan .card-symbol{left:0;right:auto;top:10px;width:115px;height:80px}
.engagement-plan+.engagement-plan .card-symbol{left:45px}
.contact-option.symbol-card{padding-top:110px}.contact-option .card-symbol{right:24px;top:24px;width:110px;height:75px}
.method-symbol{width:165px;height:110px;margin:0 0 23px}
.method-panel{min-height:440px}
.case-symbol{position:absolute!important;right:0;top:0;width:260px;height:150px;opacity:.6}
.case-heading .case-chapter{padding-right:250px}
.case-detail .symbol-drawing{stroke:var(--case-accent)}.case-detail .symbol-node{fill:var(--case-accent)}
.diagram-in-motion .diagram-stroke{stroke-dasharray:100 500;animation:diagram-current 19s ease-in-out infinite}
.diagram-in-motion .diagram-glow{animation:diagram-luster 13s ease-in-out infinite alternate}
.symbolic-motion:not(.motion-visible) *,.decor-paused .symbolic-motion *,.decor-hidden .symbolic-motion *,.decor-hidden .ambient-field *,.decor-paused .diagram-in-motion *{animation-play-state:paused!important}
.diagram-in-motion:not(.motion-visible) *,.orbit-system:not(.motion-visible) *{animation-play-state:paused!important}
@keyframes symbol-travel{0%,10%{stroke-dashoffset:.32;opacity:.1}22%{opacity:.8}78%{opacity:.8}90%,100%{stroke-dashoffset:-.85;opacity:.1}}
@keyframes symbol-breathe{from{transform:scale(.94);opacity:.35}to{transform:scale(1.04);opacity:.75}}
@keyframes focus-drift{from{transform:translate(-35px,8px) scale(.94)}to{transform:translate(32px,-12px) scale(1.02)}}
@keyframes symbol-listen{from{transform:scaleX(.88) scaleY(.98);opacity:.2}to{transform:scaleX(1.06) scaleY(1.02);opacity:.7}}
@keyframes traveller-life{0%,12%,92%,100%{opacity:0}20%,80%{opacity:.9}}
@keyframes diagram-current{0%{stroke-dashoffset:180;opacity:.3}50%{opacity:.85}100%{stroke-dashoffset:-420;opacity:.3}}
@keyframes diagram-luster{from{opacity:.35}to{opacity:.9}}
@media(max-width:1100px){.hero-symbol{right:-15%;width:75vw;opacity:.4}.has-symbol{padding-right:140px}.chapter-symbol{width:170px;height:140px;top:-5px}.case-symbol{width:200px;height:125px}.case-heading .case-chapter{padding-right:190px}.service-row{gap:14px;grid-template-columns:46px minmax(0,1fr) 18px}.service-row h3{font-size:23px}.engagement-plan+.engagement-plan .card-symbol{left:35px}}
@media(max-width:680px){
 .type-phrase{letter-spacing:.035em}.display,.interior .section-title h2,.interior .section-title h3{letter-spacing:.05em}
 .type-ending{white-space:nowrap}.copy-line{margin-bottom:4px}.conviction-body p br{display:none}
 .hero-bottom{bottom:24px}.hero-tools{gap:7px}.hero-tools button{width:37px;height:37px}
 .cinema-hero{height:910px}.hero-copy-main{bottom:140px}
 .hero-symbol{width:130%;height:360px;right:-43%;top:60%;opacity:.28}
 .section-symbol{width:95%;height:320px;right:-30%;top:15%;opacity:.18}
 .principal-section .section-symbol{width:85%;right:-45%;opacity:.12}
 .has-symbol{padding-right:0;min-height:0}.chapter-symbol{position:relative!important;right:auto;top:auto;width:150px;height:100px;margin:20px 0 -10px;opacity:.8}
 .section-title.has-symbol>p{max-width:100%}.interior .section-title{margin-bottom:35px}
 .service-row{grid-template-columns:38px minmax(0,1fr) 16px;gap:12px}.service-row .card-symbol{width:39px;height:55px}.service-row h3{font-size:23px}.service-row p{font-size:16px;line-height:2.1}.service-row .en{font-size:14px;letter-spacing:.08em;line-height:1.8}
 .service-tags{font-size:14px;gap:4px 10px}.service-tags>span+span:before{margin-right:9px}
 .overview-card,.interior .service-card,.strength{padding-top:100px!important}.overview-card h4,.interior .service-card h4{font-size:23px}
 .card-symbol{width:100px;height:70px;top:18px;right:20px}
 .value-statement{padding-top:85px!important}.value-statement .card-symbol,.value-statement:first-child .card-symbol{left:0;top:5px}
 .engagement-plan.symbol-card{padding-top:100px!important}.engagement-plan+.engagement-plan .card-symbol{left:0;top:12px}
 .method-panel{min-height:490px}.method-symbol{width:145px;height:95px;margin-bottom:20px}
 .case-heading .case-chapter{padding-right:0}.case-symbol{width:110px;height:75px;top:25px;right:-15px;opacity:.25}
 .case-chapter>p{max-width:180px}.case-detail h2{font-size:28px;line-height:1.85}
 .case-detail .case-value strong{font-size:22px;text-wrap:balance}.case-status{white-space:nowrap}
 .breadcrumb{line-height:2;letter-spacing:.025em}.interior .hero h1{font-size:16px;letter-spacing:.07em}
 .interior .hero h2{font-size:32px;letter-spacing:.04em}.interior .hero p{font-size:16px!important;line-height:2.15}
 .interior .cta h3{font-size:27px;line-height:1.9}.cta-actions{gap:12px;flex-direction:column;align-items:flex-start}.cta-actions a{min-width:190px;text-align:center}
 .price-table th{line-height:1.9}.price-table .price{font-variant-numeric:tabular-nums}.price-table .desc{line-height:2.15}
 .footer-links{gap:18px 24px}.footer-bottom{line-height:2.1}.decor-control{right:17px;bottom:17px}
 .principal-copy .display br:nth-of-type(2){display:block}
}
@media(prefers-reduced-motion:reduce){.symbolic-motion *,.diagram-in-motion *{animation:none!important}.symbol-thread{stroke-dasharray:none;opacity:.35}.symbolic-motion{opacity:.45}.symbol-traveller{display:none}}
@media print{.symbolic-motion{display:none}}

.work-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.work-principle{position:relative;padding:115px 28px 32px;border:1px solid var(--line);background:#ffffff02}
.work-principle .work-number{position:absolute;top:30px;left:28px;font:18px Georgia,serif;color:var(--gold)}
.work-principle h4{font:24px/1.9 var(--serif);margin-bottom:20px}.work-principle p{margin-bottom:0}
@media(max-width:900px){.work-principles{grid-template-columns:1fr}.work-principle{padding-top:100px}}

.type-word{white-space:nowrap}
.card-symbol{opacity:.95;--symbol-base:.4;--symbol-strong:.9}
.chapter-symbol{--symbol-base:.3}
